Bjarne Holen

inf2220 - Algorithms and data structures

This site contains information for students following the course inf2220. I will try to add small examples and howto's along the way, hopefully you'll find something useful.

Exam/Solutions 2010

A brief analysis of the assignments.
Arguments for and against a formal complaint.


Go to this page to see a mapping between the two different books that we use as basis for the curriculum.

Student organizations

Here you can find some information about student organisations that might be helpful.

MIT's Introduction to Algorithms

Every university or college on the planet that teaches computer science has some version of this course. Massachusetts Institute of Technology (MIT) is a very well respected institution, and they have a similar course which is freely available for anyone to watch on google video. So if you miss lectures, you can get great lectures for free, using the link below:

MIT Introduction to Algorithms

Small post/pre/infix example

Objects used as keys in a Map must override the hashCode function

Other (less clever) ways to implement the Heap interface

A regular Binary Heap used to implement the Heap interface

Ant + Command Line

This video was made before I realized that IFI uses $HOME/.envir as a place to put environment variables. So those of you who experience the same problem as I did regarding the $JAVA_HOME variable can set it properly inside $HOME/.envir

#logikk @

To get help with the second obligatory assignment, you might want to check out the IRC channel #logikk at, where you will find answers to hopefully just about any question. In fact your question may already be answered, and you can find the log of this channel here.

Text algorithms

Below is an implementation of the text algorithms presented at the lecture 27.10.2008 with some comments.

Dynamic Equivalence Problem

The source code for the labyrinth generator presented at the lecture 19.10.2009. Note this code is a hack, but I didn't plan on showing it to anyone, but still here it is :-)