IMT2021
Algorithmic Methods
Last taught 2020
Autumn
Gjøvik
Norwegian
About this course
Content
Techniques and algorithms:
- Object orientation
- Abstract datatypes
- Recursion
- Searching
- Sorting
- Hashing
- Compression
Data Structures:
- Arrays
- Queues
- Stacks
- Pointers and dynamic allocation
- Lists
- Trees
- Graph (connectivity, weighted, directed)
- Network Flow
Efficiency:
- Complexity and O-notation
- Use of time and space
Learning outcomes
Knowledge:
- Become familiar with, explain, apply and to some extent be able to rewrite some standard algorithms such as sorting, searching and graph handling.
- Describe and explain various data structures (arrays/tables, linked lists, queues, stacks, trees and graphs).
- Analyze advanced and complex (non-trivial) issues, and finding the algorithm to solve these.
- Apply recursive approach/method of problem solving and programming.
- Using abstraction in the construction of programs.
Skills:
- Writing reliable and efficient / fast computer programs.
- Write the program code that addresses advanced and complicated issues.
- Manage and handle advanced data structures (with particular emphasis on trees and graphs).
General competence:
- Had developed the ability to think and solve sophisticated and complex problems.
- Finding other/newer knowledge (here: algorithms), results and research in the field.
Teaching methods
- Lectures
- Exercises
- Guidance