Skip to main content

Data Structures and AlgorithmsLaajuus (5 cr)

Code: TX00DS64

Credits

5 op

Objective

Student is familiar with basic data structures and knows about some crucial, often used algorithms. Student will have practical skills for planning and analysing algorithms. Furthermore a student familiarizes oneself with the Java Collections API module, as an example of a framework including a complete set of data structures and algorithms.

Content

- Abstract data type
- Data structures: linear list, stack, queue, trees, priority queue, set (hashing), graphs
- Recursion
- Implementation of data structures and algorithms
- Search problem, sort problem
- Computational complexity
- Using Java Collections API: containers and iterators

Prerequisites

Object-oriented Applications and Databases

Assessment criteria, satisfactory (1)

Understands the principle of abstraction in programming work and is able to use different data structures offered by APIs.

Assessment criteria, good (3)

The student understands the implementation principles of different data structures and is able to choose an appropriate data structure to a problem in hand. Student is able to write algorithms to manage different data structures.

Assessment criteria, excellent (5)

The student understands and is able to analyze the computational complexity of different data structures and their algorithms.

Assessment criteria, approved/failed

Understands the principle of abstraction in programming work and is able to use different data structures offered by APIs.

Enrollment

02.05.2023 - 18.10.2023

Timing

23.10.2023 - 17.12.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

School of ICT

Campus

Myllypurontie 1

Teaching languages
  • Finnish
Seats

0 - 35

Degree programmes
  • Information and Communication Technology
Teachers
  • Matti Valovirta
Groups
  • TVT22K-O
    Ohjelmistotuotanto

Objective

Opiskelija tuntee yleisimmät tietorakenteet ja joitakin tietojenkäsittelyssä käytettäviä keskeisiä algoritmeja. Opiskelijalla on käytännön tuntuma algoritmien suunnitteluun ja laskennalliseen vaativuuteen. Lisäksi opiskelija tuntee Java-ympäristön Collections API -moduulin, joka sisältää joukon valmiita tietorakenne- ja algoritmitoteutuksia.

Content

- abstrakti tietotyyppi
- tietorakenteet: lineaarinen lista, pino, jono, puut, prioriteettijono, joukko (hajautus), verkot.
- rekursio
- tietorakenteiden ja algoritmien toteuttaminen
- etsintäongelma, järjestämisongelma
- algoritmien laskennallinen vaativuus
- Java Collections API: säiliöt ja iteraattorit

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Assessment criteria, good (3)

Opiskelija tuntee tietorakenteiden toteutusperiaatteita, osaa perustellen valita tarkoitukseen sopivan tietorakenteen ja osaa kirjoittaa tietorakenteita käsittelviä algoritmeja.

Assessment criteria, excellent (5)

Opiskelija ymmärtää tietorakenteiden ja niitä käsittelevien algoritmien laskennallisuuden problematiikan ja pystyy analysoimaan algoritmien laskennallista vaativuutta.

Assessment criteria, approved/failed

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Prerequisites

Oliosovellukset ja tietokannat

Enrollment

28.11.2022 - 05.03.2023

Timing

13.03.2023 - 07.05.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

School of ICT

Campus

Myllypurontie 1

Teaching languages
  • English
Seats

0 - 55

Degree programmes
  • Information and Communication Technology
Teachers
  • Sami Ben Cheikh
Groups
  • TVT21-O
    Ohjelmistotuotanto

Objective

Opiskelija tuntee yleisimmät tietorakenteet ja joitakin tietojenkäsittelyssä käytettäviä keskeisiä algoritmeja. Opiskelijalla on käytännön tuntuma algoritmien suunnitteluun ja laskennalliseen vaativuuteen. Lisäksi opiskelija tuntee Java-ympäristön Collections API -moduulin, joka sisältää joukon valmiita tietorakenne- ja algoritmitoteutuksia.

Content

- abstrakti tietotyyppi
- tietorakenteet: lineaarinen lista, pino, jono, puut, prioriteettijono, joukko (hajautus), verkot.
- rekursio
- tietorakenteiden ja algoritmien toteuttaminen
- etsintäongelma, järjestämisongelma
- algoritmien laskennallinen vaativuus
- Java Collections API: säiliöt ja iteraattorit

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Assessment criteria, good (3)

Opiskelija tuntee tietorakenteiden toteutusperiaatteita, osaa perustellen valita tarkoitukseen sopivan tietorakenteen ja osaa kirjoittaa tietorakenteita käsittelviä algoritmeja.

Assessment criteria, excellent (5)

Opiskelija ymmärtää tietorakenteiden ja niitä käsittelevien algoritmien laskennallisuuden problematiikan ja pystyy analysoimaan algoritmien laskennallista vaativuutta.

Assessment criteria, approved/failed

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Prerequisites

Oliosovellukset ja tietokannat

Enrollment

02.05.2022 - 21.08.2022

Timing

24.10.2022 - 18.12.2022

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

School of ICT

Campus

Myllypurontie 1

Teaching languages
  • Finnish
Seats

0 - 40

Degree programmes
  • Information and Communication Technology
Teachers
  • Juha Kämäri
  • Simo Silander
Groups
  • TVT21K-O
    Ohjelmistotuotanto

Objective

Opiskelija tuntee yleisimmät tietorakenteet ja joitakin tietojenkäsittelyssä käytettäviä keskeisiä algoritmeja. Opiskelijalla on käytännön tuntuma algoritmien suunnitteluun ja laskennalliseen vaativuuteen. Lisäksi opiskelija tuntee Java-ympäristön Collections API -moduulin, joka sisältää joukon valmiita tietorakenne- ja algoritmitoteutuksia.

Content

- abstrakti tietotyyppi
- tietorakenteet: lineaarinen lista, pino, jono, puut, prioriteettijono, joukko (hajautus), verkot.
- rekursio
- tietorakenteiden ja algoritmien toteuttaminen
- etsintäongelma, järjestämisongelma
- algoritmien laskennallinen vaativuus
- Java Collections API: säiliöt ja iteraattorit

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Assessment criteria, good (3)

Opiskelija tuntee tietorakenteiden toteutusperiaatteita, osaa perustellen valita tarkoitukseen sopivan tietorakenteen ja osaa kirjoittaa tietorakenteita käsittelviä algoritmeja.

Assessment criteria, excellent (5)

Opiskelija ymmärtää tietorakenteiden ja niitä käsittelevien algoritmien laskennallisuuden problematiikan ja pystyy analysoimaan algoritmien laskennallista vaativuutta.

Assessment criteria, approved/failed

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Prerequisites

Oliosovellukset ja tietokannat

Enrollment

29.11.2021 - 06.03.2022

Timing

14.03.2022 - 08.05.2022

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

School of ICT

Campus

Myllypurontie 1

Teaching languages
  • Finnish
Seats

0 - 40

Degree programmes
  • Information and Communication Technology
Teachers
  • Juha Kämäri
Groups
  • TVT20-O
    Ohjelmistotuotanto

Objective

Opiskelija tuntee yleisimmät tietorakenteet ja joitakin tietojenkäsittelyssä käytettäviä keskeisiä algoritmeja. Opiskelijalla on käytännön tuntuma algoritmien suunnitteluun ja laskennalliseen vaativuuteen. Lisäksi opiskelija tuntee Java-ympäristön Collections API -moduulin, joka sisältää joukon valmiita tietorakenne- ja algoritmitoteutuksia.

Content

- abstrakti tietotyyppi
- tietorakenteet: lineaarinen lista, pino, jono, puut, prioriteettijono, joukko (hajautus), verkot.
- rekursio
- tietorakenteiden ja algoritmien toteuttaminen
- etsintäongelma, järjestämisongelma
- algoritmien laskennallinen vaativuus
- Java Collections API: säiliöt ja iteraattorit

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Assessment criteria, good (3)

Opiskelija tuntee tietorakenteiden toteutusperiaatteita, osaa perustellen valita tarkoitukseen sopivan tietorakenteen ja osaa kirjoittaa tietorakenteita käsittelviä algoritmeja.

Assessment criteria, excellent (5)

Opiskelija ymmärtää tietorakenteiden ja niitä käsittelevien algoritmien laskennallisuuden problematiikan ja pystyy analysoimaan algoritmien laskennallista vaativuutta.

Assessment criteria, approved/failed

Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.

Prerequisites

Oliosovellukset ja tietokannat