Skip to main content

Algorithms and Data Structures (5 cr)

Code: R504D75-3002

General information


Enrollment

18.03.2024 - 31.07.2024

Timing

05.09.2024 - 31.10.2024

Credits

5 op

Mode of delivery

Contact teaching

Unit

Bachelor of Engineering, Information Technology

Teaching languages

  • English

Seats

0 - 30

Degree programmes

  • Machine Learning and Data Engineering

Teachers

  • Erkki Mattila

Responsible person

Erkki Mattila

Student groups

  • R54D22S

Objective

The student knows and can apply the primary data structures and algorithms. The student can compare their efficiency and complexity.

Content

- Algorithmic complexity and evaluation of the performance of algorithms: the Big O notation.
- The primary data structures and their implementations: arrays, linked lists, stacks, queues, graphs, binary trees.
- The primary algorithms and their implementations: recursion, searching and sorting.

Location and time

Computer labs at Rantavitikka Campus in the autumn term 2024.

Materials

Lecture materials, examples, exercises and assignments in Moodle workspace and/or OneDrive.



Course book

Carrano F. & Henry T. 2018. Data Structures and Abstractions with Java. 5th Edition. Pearson



Recommended reading

Goodrich M. T. & al. 2014. Data Structures and Algorithms in Java: International Student Version. 6th Edition.

Wiley Weiss M. 2012. Data Structures and Algorithm Analysis in Java: International Edition. 3rd Edition. Pearson Education

Teaching methods

Lectures and exercises, assignment and self-supervised work.

Evaluation scale

H-5

Assessment criteria, satisfactory (1)

The student can compare the complexity of algorithms and apply some basic data structures and algorithms.

Assessment criteria, good (3)

The student can compare the complexity of algorithms and apply a variety of data structures and algorithms. The student is familiar with the internal implementation of the most common data structures and algorithms.

Assessment criteria, excellent (5)

The student can evaluate the complexity of algorithms and apply a wide variety of data structures and algorithms. The students is familiar with the internal implementation of the primary data structures and algorithms. The student can choose the most effective data structures and algorithms for a given task.