Skip to main content

Algorithms and data structures (5 cr)

Code: PO00EP34-3001

General information


Enrollment
07.04.2025 - 21.04.2025
Registration for the implementation has begun.
Timing
01.09.2025 - 21.12.2025
The implementation has not yet started.
Number of ECTS credits allocated
5 cr
Local portion
5 cr
Mode of delivery
Contact learning
Unit
Department of Information Technology
Campus
Kotka Campus
Teaching languages
Finnish
Seats
0 - 38
Degree programmes
Degree Programme in Game Programming
Teachers
Teemu Saarelainen
Teacher in charge
Teemu Saarelainen
Groups
POKT22SP
Game programming, full-time studies
Course
PO00EP34

Realization has 14 reservations. Total duration of reservations is 56 h 0 min.

Time Topic Location
Thu 04.09.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 11.09.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 18.09.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 25.09.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 02.10.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 16.10.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 30.10.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 06.11.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 13.11.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 20.11.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 27.11.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 04.12.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 11.12.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Thu 18.12.2025 time 08:15 - 12:15
(4 h 0 min)
Algoritmit ja tietorakenteet PO00EP34-3001
A4020_uusikampus CodeHub (40)
Changes to reservations may be possible.

Objective

The goal of this course is for the student to gain basic knowledge and skills for utilizing different data structures and algorithms in game programming. After completing the course students will have an understanding of memory use and processing time consumption of algorithms and they will be able to choose between different algorithmic solutions and data constructs. In addition, students who pass the course can implement the most common data structures and algorithms for solving problems in games.

Content

This course is an introduction into data structures and algorithms and their application in game programming problems. In practice, the students become familiar with recursion, algorithm analysis, performance analysis and abstract data types, such as List, Stack, Queue and Deque. Additionally, practical data structures, such as trees (binary tree, binary search tree, m-tree, red-black tree) and heaps are examined in detail. The course also covers multiple different algorithms for sorting and hashing along with graphs and related algorithms, e.g. Dijkstra and A-star.

Course material

Electronic material as well as web material published on the course's Learn platform. Exercises and their model answers are also given to students during weekly exercises.

Study forms and methods

Participation in contact learning according to the work schedule. The student completes the assignments, tasks and project work required in the course before the given deadlines and participates in the exam at the end of the course if it will be arranged.

Alternative methods of study must be agreed with the lecturer in charge before the beginning of the course.

RDI and work-related cooperation

During the course, students will use the most popular game engines to implement small game programming tasks and simple algorithms, which can be later utilized in different game projects and simulations.

Timing of exams and assignments

Exercises and assignments will be returned to the Learn platform by the deadline specified there. Possible exam schedule will be agreed upon together with the students.

Student workload

A total of 135hrs student work, of which about 55hrs is contact learning and 80hrs is independent work.

Further information

A significant number of programming assignments will be done in C++, so sufficient knowledge and skills in this programming language are essential to pass the course.

Evaluation scale

1-5

Assessment methods and criteria

Successful completion of the course requires a sufficient number of exercises to be completed successfully (50%) and on time, as well as the completion of the project work.

Go back to top of page