Siirry suoraan sisältöön

Tietorakenteet ja algoritmit (5 op)

Toteutuksen tunnus: 5G00BD79-3001

Toteutuksen perustiedot


Ilmoittautumisaika
27.07.2015 - 06.09.2015
Ilmoittautuminen toteutukselle on päättynyt.
Ajoitus
01.08.2015 - 31.12.2015
Toteutus on päättynyt.
Laajuus
5 op
Lähiosuus
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tietotekniikka
Toimipiste
TAMK Pääkampus
Opetuskielet
suomi
Paikat
1 - 25
Koulutus
Tietotekniikan koulutusohjelma, vuonna 2013 tai aiemmin aloittaneet
Opettajat
Erkki Hietalahti
Vastuuhenkilö
Erkki Hietalahti
Opintojakso
5G00BD79

Osaamistavoitteet (Opintojakso)

Opiskelija osaa:
- Tietorakenteiden ja algoritmien hyvät suunnittelu- ja toteutusperiaatteet sekä
soveltamisen käytäntöön.
- Pino-, jono-, listatietorakenteiden perusperiaatteet, sisäisen rakenteen ja
soveltamisen käytäntöön.
- Linkitettyyn rakenteeseen perustuvien tietorakenteiden perusperiaatteet,
sisäisen rakenteen ja soveltamisen käytäntöön.
- Suunnitella, toteuttaa ja soveltaa tarvittaessa oman tietorakenteen sovelluksessa
käytettäväksi.
- Keskeisten etsintä- ja lajittelualgoritmien toimintaperiaatteet, toteutusratkaisut
ja soveltamisen käytäntöön

Sisältö (Opintojakso)

Sisältö:
Tavoitteissa mainittuja asioita käsitellään esitetyssä järjestyksessä. Kulloiseenkin aihepiiriin syvennytään teoriajohdatuksella, aihepiiriä harjoitellaan paikan päällä
pienryhmissä. Harjoituksia sekä teoriakertausta tehdään myös itsenäisesti.

Tenttien ja uusintatenttien ajankohdat

Kurssilla ei ole tenttiä.

Arviointimenetelmät ja arvioinnin perusteet

Kurssisuoritus arvioidaan harjoitusaktiivisuuden ja tehtyjen
harjoitustöiden perusteella. Molemmat kokonaisuudet arvioidaan
asteikolla 0-5 olevalla pistemäärällä ja kurssiarvosana on näiden pistemäärän
kahden keskiarvo ylöspäin pyöristettynä.
Harjoitusaktiivisuuden arvioinnissa käytetään seuraavaa asteikkoa:
- tehtäviä tehtynä 0 - 20 % kaikista => pistemäärä on 0
- tehtäviä tehtynä 20 - 35 % kaikista => pistemäärä on 1
- tehtäviä tehtynä 35 - 50 % kaikista => pistemäärä on 2
- tehtäviä tehtynä 50 - 65 % kaikista => pistemäärä on 3
- tehtäviä tehtynä 65 - 80 % kaikista => pistemäärä on 4
- tehtäviä tehtynä 80 % kaikista => pistemäärä on 5
Harjoitustöitä tulee olemaan 3 kpl; kukin arvioidaan jälleen
asteikolla 0 - 5 olevalla pistemäärällä ja kaikkinensa harjoitustöistä
saatava pistemäärä on näiden kolmen pistemäärän keskiarvo ylöspäin
pyöristettynä. Kunkin harjoitustyön osalta vaatimukset eri pistemääriä
varten spesifioidaan erikseen. Periaatteena on se, että mitä enemmän töitä
on tehty harjoitustyön eteen sitä enemmän siitä saa pisteitä. Harjoitustyön
ominaisuudet annetaan inkrementteinä, missä yhden inkrementin tekeminen edellyttää aina
lisää töitä ja inkrementit tehdään tietyssä loogisessa järjestyksessä.

Opiskelumuodot ja opetusmenetelmät

Neljän tunnin blokki aloitetaan teoriaopetuksella. Tämän jälkeen
käydään lävitse tehdyt kotitehtävät ja loppu aika käytetään
uusien tehtävien ja / tai harjoitustyön tekemiseen. Tässä vaiheessa
opettaja toimii konsulttina / valmentajana.

Oppimateriaalit

Kurssilla käydään lävitse soveltuvin osin seuraavassa oppikirjassa esitettyjä asioita:
Robert L. Kruse, Alexander J. Ryba: Data Structures and Program Design in C++.
Prentice Hall 1999.
Muuta oheislukemistoa:
Clifford A. Shaffer: A Practical Introduction to Data Structures and Algorithm Analysis.
Second Edition. Prentice Hall 2001.
William Ford, William Topp: Data Structures with C++ Using STL. Second Edition. Prentice Hall 2002.
Data Structures and Algorithm Analysis in C
Mark Allen Weiss
The Benjamin/Cummings Publishing Company, Inc.
1993
Data Structures and Algorithm Analysis in C++,
2. edition
Mark Allen Weiss
Addison-Wesley
February 1999
Tietorakenteet ja algoritmit
Ilkka Kokkarinen ja Kirsti Ala-Mutka
Satku – Kauppakaari
2000
Kurssin materiaalit julkaistaan tabulaan tälle kurssille varatulle
alueelle. Tabulan käyttöä harjoitellaan kurssin ensimmäisten
kokoontumisten aikana siten, että oppilas saa tarvittavat tiedot
tabulasta tämän kurssin tarpeisiin. Kurssin
luento-/tehtävämateriaali on englanninkielistä samoin kuin kurssin
oppikirja.

Opiskelijan ajankäyttö ja kuormitus

Ks. edellä. Itsenäiseen / ryhmätyöskentelyyn oppituntien ulkopuolella on syytä varata aikaa saman verran kuin lähiopetukseen kurssin asioiden omaksumiseksi.

Sisällön jaksotus

Läpikäytäviä aihealueita – aiheet ovat suoraan kurssin oppikirjan lukuja:
- Programming Principles
- Introduction to Stacks
- Queues
- Linked Stacks and Queues
- Recursion
- Lists
- Searching
- Sorting
- Binary Trees
Kurssin aikataulu ja sisällön jaksotus kerrotaan erillisessä Excel-tiedostossa, joka julkaistaan tabulaan.

Arviointikriteerit - hylätty (0) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Ei kykene selviytymään annetuista tehtävistä edes avustettuna.

Arviointikriteerit - tyydyttävä (1-2) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Osaa esimerkkien ja malliratkaisujen avulla suoriutua annetuista tehtävistä.

Arviointikriteerit - hyvä (3-4) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Hallitsee kokonaisuuden ja osaa monipuolisesti soveltaa esimerkkejä.

Arviointikriteerit - kiitettävä (5) (Ei käytössä, kts Opintojakson Arviointikriteerit ylempänä)

Osaa kekseliäästi yhdistää tietoa ja osaa analysoida omia ratkaisujaan.

Siirry alkuun