Arvutiteaduse instituut
Courses.cs.ut.ee Arvutiteaduse instituut Tartu Ülikool
  1. Kursused
  2. 2026/27 sügis
  3. Introduction to Algorithms and Data Structures (LTAT.03.029)
EN
Logi sisse

Introduction to Algorithms and Data Structures 2026/27 sügis

  • Course Information
  • Schedule

Course Information

This course is intended to be a gentle introduction to the fundamentals of algorithm design and analysis for students who are not necessarily computer science majors, but who have some experience with computer programming.

While algorithms have been studied in some form since ancient times, the development and widespread adoption of digital computers has resulted in an explosion of activity over the last hundred or so years. From this activity emerged a core collection of techniques for (and perspectives on) the storage and manipulation of information.

We will explore this core. In addition to being interesting in and of itself, undertaking this exploration will equip you with one of the basic tools of computer science, allowing you to better understand modern information processing systems, and to make better technical decisions about them.

More concretely, we will study classical data structures including arrays, linked lists, trees, graphs, and hash tables, algorithms operating on these data structures, and the analysis of their time and space usage, as well as their implementation and practical use.

See also the course page in the study information system.

Textbook

The course is based on the book "Introduction to Algorithms", by Cormen, Leiserson, Rivest, and Stein (CLRS).

A number of copies of this book are available from the university library, and digital copies are easy to come by online. While the course has been prepared using the third edition, any edition will work.

Evaluation

Three components determine your grade in this course:

Assignments20%
Midterm Test40%
Final Exam40%

There will be four assignments, each worth %5 of the final grade. Assignments will consist mostly of programming tasks (in Python), while exams will focus on theoretical understanding.

To submit your assignments TBA

Late assignments will only be accepted in exceptional circumstances.

Practical Sessions

Each week there will be two practical sessions, one focusing on written exercises of the kind one might encounter during the exams, and the other focusing on programming in Python.

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused