ITF20006 Algorithms and Datastructures (Spring 2015)
Facts about the course
- ECTS Credits:
- 10
- Responsible faculty:
- Faculty of Computer Sciences, Engineering and Economics
- Course Leader:
- Lars Vidar Magnusson
- Teaching language:
- Norwegian
- Duration:
- ½ year
Table of contents
The course is affiliated to the following study programme
Compulsory course in the Bachelor Programme in Computer Science.
Elective course in:
- Bachelor Programme in Computer Engineering
- Bachelor Programme in Computer Engineering, Y-veien
- Bachelor Programme in Computer Engineering, Tress
Prerequisites
Teaching semester
Bachelor Programme in Computer Science: semester 4 (spring)
Bachelor Programme in Computer Engineering: semester 4 or 6 (spring)
Bachelor Programme in Computer Engineering, Y-veien: semester 4 or 6 (spring)
Bachelor Programme in Computer Engineering, Tress: semester 4 or 6 (spring)
Total workload:
4 hours of lectures + exercises per week.
Content
The student's learning outcomes on passing the course
Knowledge
On completion of the course, the students can:
- explain the construction and purpose of linear data structures (lists, queues), tree structures, (binary trees, search trees, balanced trees, binary heaps) and network structures
- give an account of table-based and linked data structures and explain what is meant by the term "effective" in the context of algorithms
- give an account of how different algorithms work and of their effectiveness for storing, inserting, searching, deleting, sorting, traversing and backtracking, both as iterative and recursive variants
Skills
On completion of the course, the students can:
- design, implement and apply data structures to different requirements
- analyze, design, implement and use fundamental and classic algorithms
- use both custom and proprietary algorithms and data structures to solve complex and complicated problems
General competence
On completion of the course, the students can:
- derive pleasure from having insights into fundamental and durable principles in classic computer science that will remain valid regardless of hardware platforms and programming languages
- feel confident in using concepts and terminology that are broadly used computer science communities worldwide
- discuss and advise on the use of data structures and algorithms in different situations in professional forums
- disseminate the importance and necessity of using appropriate structures and effective algorithms
Teaching and learning methods
Coursework requirements - conditions for taking the exam
Exam
Written exam
Written exam lasting 4 hours. Letter grading scale A?F.
Support materials: 4 sheets (8 pages) in A4-format containing students' own notes.
Course evaluation
This course is evaluated as follows:
- Mid-semester evaluation (optional)
- Final evaluation (compulsory)
The course instructor prepares a course report on the basis of student feedback and on his/her own experiences of the course. Course reports are discussed with the Committee for Study Quality at the Faculty of Computer Sciences.