Algorithmic Methods
2009-2010 - IMT2021 - 10 ECTS

On the basis of

IMT1082 - Object-Oriented Programming

Expected learning outcomes

The student shall:
- explain, use and to some degree change a lot of standard
algorithms, a.o. sorting, searching and graph handling.
- be able to write reliable and efficient programs.
- find the algorithm for non-trivial problems and write the code
to solve this.
- handle advanced data structures such as lists, threes and
graphs.
- use abstraction in construction of programs.
- use recursion by problem solving.

Topic(s)

Techniques and algorithms:
- Object orientation
- Abstract datatypes
- Recursion
- Searching
- Sorting
- Hashing
- Compression
- Finite State Machines/Automata
Data Structures:
- Arrays
- Queues
- Stacks
- Pointers and dynamic allocation
- Lists
- Trees
- Graph (connectivity, weigted, directed)
- Network Flow
Efficiency:
- Complexity and O-notation
- Use of time and space

Teaching Methods

Lectures
Mandatory assignments
Exercises
Tutoring

Form(s) of Assessment

Written exam, 5 hours

Grading Scale

Alphabetical Scale, A(best) – F (fail)

External/internal examiner

Graded by course instructor and examiner.

Re-sit examination

Ordinary re-sit examination

Examination support

All printed matters and hand written notes

Coursework Requirements

Exercises (must have been approved by student assistant).

Teaching Materials

Sedgewick, Robert. (1992). Algorithms in C++. Boston, MA: Addison-Wesley.
Faglærer. Kompendium. Gjøvik: HiG.
Faglærer. Annet utdelt litteratur/artikler/notater. Gjøvik: HiG.

Additional information

The textbook can be leased from the school (against a deposit). A copy of some of the pages can be bought in the book shop at the school.