|
OHJ-2010 Tietorakenteiden käyttö, 5 op
|
Terhi Kilamo
Luentoajat ja -paikat | Kohderyhmä, jolle suositellaan | |
Toteutus 1 |
|
Harjoitustyöt, tentti, tietokoneharjoitus.
Osasuoritusten pitää liittyä samaan toteutuskertaan
-
Kurssin suoritettuaan opiskelija tuntee yleisimmin käytetyt järjestelyalgoritmit, perustietorakenteet sekä yleisimmät niiden käsittelyyn tarvittavat algoritmit. Opiskelija ymmärtää asymptoottisen analyysin periaatteet sekä osaa arvioida yksinkertaisten ohjelmien ajan- ja muistinkäyttöä. Lisäksi opiskelija osaa selittää ohjelmointikielten kirjastojen käyttämisen edut ja rajoitteet sekä tietää ottaa huomioon kielten kirjastojen väliset erot. Kurssilla esimerkkikirjastona on C++:n standardikirjasto, jonka tarkoituksenmukainen käyttö tunnetaan kurssin jälkeen.
Sisältö | Ydinaines | Täydentävä tietämys | Erityistietämys |
1. | Asymptoottisen tehokkuuden käsitteen ja kertaluokkamerkintöjen ymmärtäminen | Hajoita- ja hallitse -tyyppisten algoritmien logaritmisen suoritusajan ymmärtäminen | Vaikeammat suoritusaikalaskut |
2. | Tärkeimmät järjestämisalgoritmit, neliöllisten ja O(n log n)- järjestämisalgoritmien välinen ero | Yksittäiset algoritmit | |
3. | Listat, hajautustaulu, binäärihakupuu | Puna-musta puu, muut puurakenteet | Harvinaisemmat tietorakenteet |
4. | kirjastojen tietorakenne- ja algoritmitoteutukset: sopivan tietorakenteen valinta ja käyttö C++:n standardikirjasto | Algoritmien käyttö, iteraattorikategoriat, säiliösovittimet | Standardikirjasto ja omat tietotyypit |
5. | Graafin esitystapa ja graafialgoritmien keskeiset periaatteet | Leveyssuunnattu haku, syvyyssuunnattu haku, Dijkstran algoritmi | Muut algoritmit |
Kurssin arvosana muotoutuu opiskelijan ohjelmointiharjoitustyö- ja tenttimenestyksen perusteella. Läpipääsyyn vaaditaan vähintään 15 tenttipistettä sekä 18 pistettä yhteensä harjoitustöistä ja tentistä. Maksimi kokonaispistemäärä on 36. Lisäksi kurssilla odotetaan opiskelijoiden suorittavan riittävä määrä tietorakenne- ja algoritmiharjoituksia Trakla-järjestelmässä pakollisena osasuorituksena. Trakla-suoritus arvostellaan hyväksytty/hylätty eikä sillä ole muuta suoraa vaikutusta kurssin arvosanaan. Aktiivinen osallistuminen kurssin harjoituksiin korottaa hyväksyttyä kurssiarvosanaa yhdellä. Hylättyä arvosanaa ei voi aktiivisella osallistumisella korottaa.
Opintojaksolla käytetään numeerista arviointiasteikkoa (1-5)
Tyyppi | Nimi | Tekijä | ISBN | URL | Painos,saatavuus... | Tenttimateriaali | Kieli |
Kirja | Introduction to Algorithms, Second Edition | Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein | 0-262-03293-7 | Englanti | |||
Kirja | Tietorakenteiden käyttö/ Utilization of Data Structures | Minna Ruuska/Terhi Kilamo (toimittanut) | ISBN 1 84479 360 5 | Juvenes-kirjakauppa | Englanti | ||
Opintomoniste | Tietorakenteiden käyttö | Minna Ruuska | TiTe-kilta | Suomi |
Opintojakso | P/S | Selite |
OHJ-1150 Ohjelmointi II | Pakollinen | Opintojaksot ovat vaihtoehtoisia esitietoja ja toisensa poissulkevia. |
OHJ-1151 Ohjelmointi II e | Pakollinen |
Opintojakso | Vastaa opintojaksoa | Selite |
|
|
|
|
|
Kuvaus | Opetusmuodot | Toteutustapa | |
Toteutus 1 | Kurssin suoritettuaan opiskelijan pitäisi tuntea yleisimmin käytetyt tietorakenteet ja järjestelyalgoritmit sekä osata analysoida yksinkertaisten ohjelmien asymptoottista ajankäyttöä. Lisäksi hänen tulisi osata käyttää C++:n Standardikirjastoa tarkoituksenmukaisesti. Kurssiin kuuluvat ohjelmointiharjoitustehtävät, tietokoneharjoitus ja tentti. Arvostelu tapahtuu tentin ja harjoitustehtävistä saatujen pisteiden pohjalta. https://www.tut.fi/public/oppaat/opas2008-2009/perus/laitokset/Ohjelmistotekniikka/OHJ-2010.html | Luennot Harjoitukset Harjoitustyöt |
Lähiopetus: 0 % Etäopetus: 0 % Itseopiskelu: 0 % |