Data Structures and Algorithms (5 cr)
Code: 5G00EU64-3001
General information
- Enrolment period
- 15.11.2020 - 15.01.2021
- Registration for the implementation has ended.
- Timing
- 11.01.2021 - 30.04.2021
- Implementation has ended.
- Credits
- 5 cr
- Mode of delivery
- Contact learning
- Unit
- ICT Engineering
- Campus
- TAMK Main Campus
- Teaching languages
- Finnish
- Degree programmes
- Degree Programme in ICT Engineering
Objectives (course unit)
The students become familiar with the basic concepts and methods of the course. He will be familiar with the basic data structures and algorithms going through the course.
Content (course unit)
Basic concepts related to data structures and algorithms. Basic information structures: stacks, queues, lists, trees and nets. The key search and sorting algorithms as well as algorithms related to tree and network utilization are discussed. Devolution.
Assessment criteria, satisfactory (1-2) (course unit)
Student
-Knows some algorithms
- Is able to identify some of the basic data structures such as stacks, queues, lists, trees and nets
- can apply the course subjects with help
Assessment criteria, good (3-4) (course unit)
Student
- Knows Algorithms such as Key Search and Sort Algorithms and Algorithms for Tree and Net Exploitation
- Is able to identify basic data structures such as stacks, queues, lists, trees and nets
-The Principles of Decentralization
- can apply course subjects
Assessment criteria, excellent (5) (course unit)
The student
- Knows the above mentioned things at an excellent level and fluently. In addition, the student
- -Is able to apply the pathway structures and algorithms smoothly and appropriately in the construction of information systems
- Has the ability to develop your own variants of data structures as needed and find the most suitable data structures / algorithms
Location and time
Etäopetus pidetään zoom-ohjelmalla lukujärjestykseen merkittyinä aikoina (aloitus aina vartin ylitse). zoom-kutsu on välitetty osallistujille kalenterikutsuina ja löytyy kurssin moodle-sivustolta.
Exam schedules
Kurssilla ei ole tenttiä.
Assessment methods and criteria
Kurssisuoritus arvioidaan harjoitusaktiivisuuden ja tehtyjen
harjoitustöiden perusteella. Molemmat kokonaisuudet arvioidaan
asteikolla 0-5 olevalla pistemäärällä ja kurssiarvosana on näiden kahden pistemäärän
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 uuden inkrementin tekeminen edellyttää aina
lisää töitä ja inkrementit tehdään tietyssä loogisessa järjestyksessä.
Assessment scale
0-5
Teaching methods
Kolmen 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.
Learning materials
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 moodleen tälle kurssille varatulle
alueelle. Moodlen käyttöä harjoitellaan kurssin ensimmäisten
kokoontumisten aikana siten, että oppilas saa tarvittavat tiedot
moodlesta tämän kurssin tarpeisiin. Kurssin
luento-/tehtävämateriaali on englanninkielistä samoin kuin kurssin
oppikirja.
Student workload
Ks. edellä. Itsenäiseen / ryhmätyöskentelyyn oppituntien ulkopuolella on syytä varata aikaa noin kaksi kertaa sen verran kuin lähiopetukseen kurssin asioiden omaksumiseksi.
Content scheduling
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 moodleen.
Assessment criteria - fail (0) (Not in use, Look at the Assessment criteria above)
Ei kykene selviytymään annetuista tehtävistä edes avustettuna.
Assessment criteria - satisfactory (1-2) (Not in use, Look at the Assessment criteria above)
Osaa esimerkkien ja malliratkaisujen avulla suoriutua annetuista tehtävistä auttavasti ja/tai tyydyttävästi.
Assessment criteria - good (3-4) (Not in use, Look at the Assessment criteria above)
Hallitsee kokonaisuuden ja osaa soveltaa esimerkkejä monipuolisesti.
Assessment criteria - excellent (5) (Not in use, Look at the Assessment criteria above)
Osaa kekseliäästi yhdistää tietoja uusien innovaatioiden luomiseksi ja osaa analysoida omia ratkaisujaan kriittisesti ja osaa kertoa mitä niihin voisi lisätä paremman tuloksen saavuttamiseksi.