Skip to main content

Tietorakenteet ja algoritmit (3 op)

Toteutuksen tunnus: TTC1050-3007

Toteutuksen perustiedot


Ilmoittautumisaika

01.11.2022 - 05.01.2023

Ajoitus

27.01.2023 - 28.04.2023

Opintopistemäärä

3 op

Virtuaaliosuus

3 op

Toteutustapa

Verkko-opetus

Yksikkö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet

  • Suomi

Paikat

0 - 210

Koulutus

  • Tieto- ja viestintätekniikka (AMK)

Opettaja

  • Ville Arvio

Ryhmät

  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV21SM
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)

Objectives

Tarkoitus
Opintojakson käytyäsi ymmärrät algoritmiin ja sen toteutukseen liittyvät keskeiset käsitteet. Lisäksi osaat valita algoritmin toteutukseen soveltuvat tietorakenteet ja arvioida algoritmin tehokkuutta.

EUR-ACE-osaamiset:
Tieto ja ymmärrys
Tekniikan soveltaminen käytäntöön
Tutkimukset ja tiedonhaku

Osaamistavoite
Osaat kuvata ja tulkita algoritmeja sekä arvioida niiden toimivuutta ja tehokkuutta erilaisissa tilanteissa. Lisäksi tunnet tärkeimmät tietorakenteet ja osaat valita niihin soveltuvat algoritmit toteutuskielestä ja –alustasta riippumatta.

Content

Opintojaksolla tutustutaan erilaisiin algoritmityyppeihin ja yleisimpiin algoritmeihin. Algoritmien tehokkuuden mittaaminen opitaan tärkeimpien algoritmien avulla. Algoritmityypit käydään alkaen perustietorakenteista edeten kohti mutkikkaimpia (puut ja verkot) toteutuksia. Opintojaksolla käydään läpi eri tyyppiset algoritmien ja tietorakenteiden ominaisuudet riippumatta toteutuskielestä tai –alustasta.

Learning materials and recommended literature

Verkko-oppimisympäristössä julkaistava sähköinen materiaali.

Teaching methods

- verkkoluennot viikottain
- itseopiskelu
- verkko-opinnot
- harjoitukset
- harjoitustyö (ryhmissä)

Exam dates and retake possibilities

Mahdollinen tentin ajankohta ja toteutustapa ilmoitetaan opintojakson ensimmäisellä kerralla. Pandemiatilanne saattaa vaikuttaa toteutukseen.

Alternative completion methods

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Student workload

Yksi opintopiste (1 op) tarkoittaa keskimäärin 27 tunnin työtä.

- luennot 24 h
- harjoitustyö ja seminaari 20 h
- itsenäinen työskentely 37 h

Yhteensä 81 h

Content scheduling

Tunneilla käydään läpi koko tietorakenteet ja algoritmit aihealue. Harjoitustyö käynnistetään ennen itseopiskeluviikkoa. Opiskelijaryhmien on mahdollista saada tukea harjoitustyöhön koko opintojakson ajan.

Further information for students

Arviointi perustuu kokonaisuuteen, joka koostuu seuraavista osasuorituksista:

- Harjoitustyö 10 pistettä
- Harjoitukset 14 pistettä

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

Hyväksytty/välttävä 1: Tunnet välttämättömimmät tietorakenteisiin ja algoritmeihin liittyvät käsitteet. Tunnet opintojaksolla käydyt tärkeimmät lineaariset tietorakenteet ja niiden käyttömahdollisuudet. Kykenet analysoimaan yksinkertaisen algoritmin toiminnan ja arvioimaan sen tehokkuutta.

Tyydyttävä 2: Tunnet välttämättömimmät tietorakenteisiin ja algoritmeihin liittyvät käsitteet. Tunnet opintojaksolla käydyt lineaariset tietorakenteet ja niiden käyttömahdollisuudet. Kykenet analysoimaan yksinkertaisen algoritmin toiminnan ja arvioimaan sen tehokkuutta.

Evaluation criteria, good (3-4)

Hyvä 3: Tunnet keskeiset tietorakenteisiin ja algoritmeihin liittyvät käsitteet. Tunnet opintojaksolla käydyt lineaariset ja osan monimutkaisemmista tietorakenteista. Lisäksi ymmärrät lineaaristen tietorakenteiden käyttötarkoitukset. Osaat toteuttaa algoritmin, jossa hyödynnetään jotain valittua tietorakennetta. Kykenet analysoimaan algoritmin toiminnan ja arvioimaan sen tehokkuutta.

Kiitettävä 4: Tunnet keskeiset tietorakenteisiin ja algoritmeihin liittyvät käsitteet. Tunnet opintojaksolla käydyt tietorakenteet ja hahmotat niiden käyttötarkoitukset. Osaat toteuttaa algoritmin, jossa hyödynnetään monipuolisesti tietorakenteita. Kykenet analysoimaan algoritmin toiminnan ja arvioimaan sen tehokkuutta.

Evaluation criteria, excellent (5)

Tunnet laajasti keskeiset tietorakenteisiin ja algoritmeihin liittyvät käsitteet. Tunnet opintojaksolla käydyt tietorakenteet ja hahmotat niiden käyttötarkoitukset. Osaat toteuttaa algoritmin, jossa hyödynnetään monipuolisesti tietorakenteita. Kykenet analysoimaan syvällisesti algoritmin toiminnan ja arvioimaan sen tehokkuutta. Osaat valita ja perustella ongelmanratkaisutilanteeseen soveltuvimman algoritmin ja sen tietorakenteet.

Prerequisites

Ohjelmoinnin perusteet

Lisätiedot

Läpikäytyjä teknologioita: Algoritmityypit, tehokkuusluokitus ja analysointi, tiedon haku- ja järjestämisalgoritmit eri tietorakenteilla, tiedon haku- ja talletustekniikat, abstraktit tietorakenteet, listat, jonot, pinot, puut ja verkot sekä niihin liittyvät algoritmit.