Skip to main content

Data Structures and Algorithms (5 cr)

Code: 5051260-3003

General information


Enrollment
02.12.2021 - 31.12.2021
Registration for the implementation has ended.
Timing
10.01.2022 - 30.04.2022
Implementation has ended.
Number of ECTS credits allocated
5 cr
Local portion
2 cr
Virtual portion
3 cr
Mode of delivery
Blended learning
Unit
Engineering and Business
Teaching languages
Finnish
English
Seats
20 - 70
Degree programmes
Degree Programme in Information and Communications Technology
Degree Programme in Information and Communication Technology
Teachers
Tapani Ojanperä
Teacher in charge
Tapani Ojanperä
Groups
PTIVIS20S
Embedded Software and IoT
Course
5051260
No reservations found for realization 5051260-3003!

Evaluation scale

H-5

Content scheduling

January– April 2022
January: Algorithmic Thinking and Analysis
February: Basic Data Structures
March: Advanced Data Structures
April: Sorting Algorithms, Search Algorithms, exam
• Arrays, Linked List, Stack, Queue
• Hash table, Trees, Graphs
• Bubble, Selection, Insertion, Merge and Quick Sort

methods
• Binary search, Pathfinding, Shuffling

Objective

After completing the course the student can:
- explain the most common data structures
- apply the most common data structures and algorithms connected to the use of these structures
- evaluate the efficiency of algorithms.

Content

- lists, stacks, queues, trees, graphs and hash tables
- analysing and evaluating algorithms 
- designing algorithms     
- sorting methods
- search algorithms

Materials

Slides on itslearning
Granville- Luca Del Tongo: Data Structures and Algorithms
https://dsa.codeplex.com/
Various internet sources, links & descriptions are provided in itslearning.

Teaching methods

Independent work, online activities (quizzes and problem sets).

Exam schedules

One exam in the end of the course. The schedule of the exams will be in itslearning.
Two re-exams.

International connections

The course material is totally in English. Data Structures and Algorithms are very crucial to know in order to make successful programs. Besides some of the students are international ones. Material consists of PowerPoint slides, Word and PDF files. In addition, there are links to different web materials, e.g. lectures and presentations in YouTube and in some other places in Internet. The course consists of rounds of topics (learning material & quiz - homework - teacher review). There will be a specified time slot of each round. Some rounds have quizzes. Each quiz will consist of 4-6 quick questions, where the student needs to choose an answer out of 4 available ones, or answer yes or no. After every section there will be a homework assignment to solve some algorithmic problems related to the current subject.

Student workload

Material reading 60h
Homework (quizzes and exercises) 60h
Preparing exam 15h
Total 135h

Qualifications

Ohjelmoinnin perustaidot jollakin korkean tason ohjelmointikielellä (esimerkiksi Python, Java, C# tai vastaava)
•Ohjelmoinnin perustaitoihin kuuluu muun muassa ulostulon formatointi, ehtolauseet, silmukat, funktiot/aliohjelmat, funktion parametrit ja paluuarvot, taulukot, virheentarkastelu, testaus ja hyvät koodauskäytännöt
•Riittävät matemaattis-loogiset ajattelutaidot

Further information

Python (or C#)and MatLab are recommended and used, but other common languages are acceptable in homeworks.
All practical information on schedules, quizzes, problems, grading etc., as well as links to web materials are provided in itslearning.

Go back to top of page