IN2010 – Algorithms and Data Structures

Schedule, syllabus and examination date

Choose semester

Teaching and exams spring 2022

At the MN Faculty teaching is in-person this spring, but there may still be cases of online or hybrid teaching.

Please see the semester page, Canvas or your regular channel of information for changes in teaching and form of examination.

Course content

The course provides a review of data structures such as stacks, trees, graphs, hash tables and priority queues, as well as algorithms for sorting, searching, insertion, and so on. Various implementations are assessed with emphasis on efficiency, program structure and abstract data types. Important elements of the subject are recursive programming as well as assessment and description of the programs effectiveness.

Learning outcome

After finishing IN2010, you´ll

  • have an overview of data structures like lists, trees, graphs, hash tables, and priority queues, and control their use to achieve effective programs
  • master good solutions for search, sort, and graphical issues
  • be able to use recursive programming to solve some of the issues mentioned above in effective ways
  • know common ways to specify the effectiveness of programs and you can estimate the runtime of a given application with different size datasets

Admission to the course

Students who are admitted to study programmes at UiO must each semester register which courses and exams they wish to sign up for in Studentweb.

If you are not already enrolled as a student at UiO, please see our information about admission requirements and procedures.

Special admission requirements

In addition to fulfilling the Higher Education Entrance Qualification, applicants have to meet the following special admission requirements:

  • Mathematics R1 or Mathematics (S1+S2)

The special admission requirements may also be covered by equivalent studies from Norwegian upper secondary school or by other equivalent studies. Read more about special admission requirements (in Norwegian).

Formal prerequisite knowledge

The course presuppose IN1010 – Object-oriented Programming/INF1010 – Object oriented programming (continued)/IN1910 – Programming with Scientific Applications/IN101/IN105

Overlapping courses


2 hour of lectures and 4 hours of seminar groups each week. Completion of mandatory tasks is required. Read more about requirements for assignment of assignments, group work and legal cooperation under guidelines for mandatory assignments.


4 hours final written digital exam. All mandatory assignments must be approved before you´re allowed to take the exam.

It will also be counted as one of your three attempts to sit the exam for this course, if you sit the exam for one of the following courses: INF2220 – Algorithms and Data Structures (continued), INF1020 – Algorithms and data structures (discontinued), INF110 – Algoritmer og datastrukturer (discontinued) and IN115.

Language of examination

You may write your examination paper in Norwegian, Swedish, Danish or English.

Grading scale

Grades are awarded on a scale from A to F, where A is the best grade and F is a fail. Read more about the grading system.

Resit an examination

Students who can document a valid reason for absence from the regular examination are offered a postponed examination at the beginning of the next semester.Re-scheduled examinations are not offered to students who withdraw during, or did not pass the original examination.

Special examination arrangements, use of sources, explanations and appeals

See more about examinations at UiO

Last updated from FS (Common Student System) May 19, 2022 5:18:19 AM

Facts about this course

Teaching language