Skip to main content

Data Structures and AlgorithmsLaajuus (3 ECTS)

Course unit code: TT00AA23

General information


Credits
3 ECTS

Objective

After the course, the student will understand the basic principle behind abstract data types. The student is also able to construct an application, which uses an abstract data type. The student can also select a suitable container for the problem in hand and implement the container.

Content

- Abstract data types
- Software components
- Abstract data types (ADT), stacks, queues and trees
- Iterators and containers
- Complexity of different implementations
- Recursion in definitions, problem solving, and as a programming technique

Qualifications

Introduction to Programming
Advanced C Programming

Assessment criteria, satisfactory (1)

Understands the principle of abstraction in programming work both regarding functionalities and data. Understands the consept of abstract data type (ADT) and its importance in programming work. Is able to use given ADTs and is able to construct reusable ADTs.

Assessment criteria, good (3)

Student is able to utilize dynamic memory when realizing abstract data types. He is also able to use stack and queue container types when designing various algorithms. Student knows that there are benefits and drawbacks when implementing containers in different ways, and he is able to select optimal implementations in particular cases.

Assessment criteria, excellent (5)

Understands the relation between recursion and stack, and is able to resolve relative complicated problems using stack or recursion. Understands when recursive solution is better and when iterative solution is better in solving a given problem. Understands the consept of generality when trying to improve the productivity of the programming work.

Go back to top of page