Tietorakenteet ja algoritmit (5 op)
Toteutuksen tunnus: 5051263-3006
Toteutuksen perustiedot
- Ilmoittautumisaika
-
02.12.2023 - 31.12.2023
Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
-
01.01.2024 - 30.04.2024
Toteutus on päättynyt.
- Opintopistemäärä
- 5 op
- Lähiosuus
- 5 op
- Toteutustapa
- Lähiopetus
- Yksikkö
- Tekniikka ja liiketoiminta
- Toimipiste
- Kupittaan kampus
- Opetuskielet
- suomi
- englanti
- Paikat
- 20 - 40
- Koulutus
- Degree Programme in Information and Communications Technology
- Tieto- ja viestintätekniikan koulutus
- Opettajat
- Noora Maritta Nieminen
- Vastuuopettaja
- Noora Maritta Nieminen
- Ryhmät
-
PTIVIS22HHealth Technology
- Opintojakso
- 5051263
Toteutuksella on 3 opetustapahtumaa joiden yhteenlaskettu kesto on 6 t 0 min.
Aika | Aihe | Tila |
---|---|---|
Pe 05.04.2024 klo 12:00 - 14:00 (2 t 0 min) |
Practice HEALTH, Tietorakenteet ja algoritmit 5051263-3006 |
ICT_B1039
IT telakka
|
Pe 12.04.2024 klo 12:00 - 14:00 (2 t 0 min) |
Practice HEALTH, Tietorakenteet ja algoritmit 5051263-3006 |
ICT_B1039
IT telakka
|
Pe 19.04.2024 klo 12:00 - 14:00 (2 t 0 min) |
Practice HEALTH, Tietorakenteet ja algoritmit 5051263-3006 |
ICT_B1039
IT telakka
|
Arviointiasteikko
H-5
Sisällön jaksotus
January– April 2024
January: Algorithmic Thinking and Analysis
• pseudocode, flowcharts
• efficiency and algorithmic complexity
February: Basic Data Structures
• Arrays, Linked List, Stack, Queue
March: Advanced Data Structures
• Hash table, Trees, Graphs
April: Sorting Algorithms, Search Algorithms
• Bubble, Selection, Insertion, Merge and Quick Sort
Tavoitteet
Opintojakson suoritettuaan opiskelija osaa:
- selittää tavallisimpia tietorakenteita
- hyödyntää keskeisiä tietorakenteita sekä niiden käyttöön liittyviä algoritmeja
- arvioida algoritmien suoritustehokkuutta.
Sisältö
- listat, pinot, jonot, puut, verkot ja hajautustaulut
- algoritmien analysointi
- algoritmien suunnittelu
- järjestämistekniikat
- hakualgoritmit
Oppimateriaalit
Lecture and practice session material in ItsLearning, e.g. PowerPoint presentations, Jupyter notebook / Python files, etc.
All material is provided in English
Opetusmenetelmät
Attending to lectures: teacher will provide both theoretical background and practical examples on a dedicated topic
Attending practice sessions: the theory is put into action in practice - we will see solutions to previous exercises + practice new topics
Individual work: Completing the assignments individually after face-to-face sessions
Tenttien ajankohdat ja uusintamahdollisuudet
Midterm 1 will be held in February (close to winter break), topics are "Algorithms and complexity" and "Basic data structures"
Midterm 2 will be held at the end of the course in April, topics are "Advanced data structures" and "search algorithms"
You will have the chance to retake midterm 1 at the end of the course when you also take the midterm 2 exam.
There is one retake exam for the entire course at the beginning of May.
Pedagogiset toimintatavat ja kestävä kehitys
Understanding data structures and algorithmic efficiency / complexity are essential in many ways. During this course, the student will gain both theoretical and practical understanding on these topics.
Students will learn to use pseudocode / flowcharts to describe algorithms and analyze their complexity. Practical understanding is gained through coding exercises. We will use Python as our main coding language.
Toteutuksen valinnaiset suoritustavat
Ask teacher, if there is an ongoing suitable online course (FiTech / Coursera or equivalent).
CampusOnline courses ARE NOT accepted!
Opiskelijan ajankäyttö ja kuormitus
Lectures 2h / week (all three groups together)
Practice sessions 2h / week (three small groups)
Individual work outside school: reading, studying, preparing the weekly programming practice tasks
Arviointimenetelmät ja arvioinnin perusteet
The grade will be based on the following criteria:
- 2 midterm exams
- homework activity
- attendance to lectures and practice sessions
More detailed description provided at the first lecture and in ItsLearning
Hylätty (0)
Student fails to meet most of the general objectives of the course in a satisfactory level.
Arviointikriteerit, tyydyttävä (1-2)
• has an elementary understanding on the performance of algorithms and in simple cases is able to apply some methods of analysis covered during the course.
• is familiar with some major algorithms and data structures covered in the course.
• has a basic understanding on how to apply the algorithmic design parameters covered in the course.
• has an elementary understanding on data representation.
• demonstrates some understanding on how to decompose programming problems in a purposeful way.
• can use most elementary data structures appropriately
Arviointikriteerit, hyvä (3-4)
• can analyze the performance of simple algorithms and is able to apply some of the methods of analysis covered during the course.
• is familiar with most of the major algorithms and data structures covered in the course.
• has an understanding of the algorithmic design parameters covered in the course.
• has a good understanding on data representation.
• demonstrates ability to decompose programming problems in a somewhat purposeful way.
• can choose and use elementary data structures appropriately in most cases.
Arviointikriteerit, kiitettävä (5)
• can analyze the performance of simple algorithms and is able to apply some of the methods of analysis covered during the course.
• is familiar with most of the major algorithms and data structures covered in the course.
• has an understanding of the algorithmic design parameters covered in the course.
• has a good understanding on data representation.
• demonstrates ability to decompose programming problems in a somewhat purposeful way.
• can choose and use elementary data structures appropriately in most cases.
Lisätiedot
ItsLearning
Email