Kursa kods DatZ3019

Kredītpunkti 6

Algoritmi un struktūras

Zinātnes nozareDatorzinātne un informātika

Zinātnes apakšnozareProgrammēšanas valodas un sistēmas

Kopējais stundu skaits kursā162

Lekciju stundu skaits32

Laboratorijas darbu stundu skaits32

Studenta patstāvīgā darba stundu skaits98

Kursa apstiprinājuma datums25.10.2022

Atbildīgā struktūrvienībaDatoru sistēmu un datu zinātnes institūts

Kursa izstrādātāji

author lekt.

Jekaterina Smirnova

Mg. sc. ing.

author lekt.

Ingus Šmits

Mg. sc. ing.

Priekšzināšanas

DatZ1009, Programmēšanas pamati I

DatZ1010, Programmēšanas pamati II

Kursa anotācija

Studiju kursa mērķis ir iepazīstināt studējošos ar algoritmu veidošanas principiem, to pamatelementiem un veiktspējas analīzes metodēm. Praktisko nodarbību laikā studējošie veido datu struktūras, pēta algoritmus, kuri ir saistīti ar to izmantošanu, kā arī analizē .NET platformā iekļautās datu struktūru un algoritmu realizācijas.

Kursa rezultāti un to vērtēšana

Kursa apgūšanas rezultātā studenti:
• zin programmēšanas pamatprincipus (laboratorijas darbi);
• prot kodēt un atkļūdot programmas, lietot labo programmēšanas stilu, projektēt algoritmus un datu struktūras (laboratorijas darbi, eksāmens);
• spēj patstāvīgi kodēt un atkļūdot programmas, sastādīt un analizēt gatavus algoritmus un datu struktūras (eksāmens).

Kursa saturs(kalendārs)

1. Datu tipi, datu tipu konvertēšana konvertācija- 4 stundas
2. Klases, attiecības starp klasēm, mantošana- 4 stundas
3. Sarakstu veidi: ArrayList, Queue, Stack- 4 stundas
4. Vienkārši saistīta saraksta (singly linked list) izstrāde- 8 stundas
5. Divkārši saistīta saraksta (doubly linked lists) izstrāde- 4 stundas
6. Parametrizēta saraksta izmantošana List4 stundas
7. Kolekciju Hashtable un Dictionary izmantošana. Darbs ar atslēgām un vērtībam- 4 stundas
8. Elementārie kārtošanas algoritmi- 4 stundas
9. Rekursīvie kārtošanas algoritmi- 4 stundas
10. Koka struktūras izstrāde- 8 stundas
11. Binārā meklēšanas koka struktūras izstrāde- 4 stundas
12. Vienkārša grafa struktūras izstrāde- 8 stundas
13. Dijkstra algoritma izstrāde grafa struktūrai- 4 stundas

Prasības kredītpunktu iegūšanai

Jābūt izpildītiem laboratorijas darbiem un nokārtotam eksāmenam.

Studējošo patstāvīgo darbu organizācijas un uzdevumu raksturojums

Studentam semestra laikā ir jāizpilda laboratorijas darbi, izmantojot darba uzdevuma aprakstus un konsultējoties ar laboratorijas darba vadītāju un lektoru.
Studentam patstāvīgi jāstudē literatūra un Internet tīkla resursi.

Studiju rezultātu vērtēšanas kritēriji

Eksāmena atzīme tiek formēta no trim daļām –laboratorijas darbu vērtējums (40% ), eksāmena vērtējums (60%).

Obligātā literatūra

1. Srivastava A.K. A Practical Approach to Data Structure and Algorithm with Programming in C. Oakville, ON: Arcler Press, 2020. 474 p. Pieejams: datubāzē EBSCO e-book academic collection https://search-ebscohost-com.ezproxy.llu.lv/login.aspx?direct=true&db=e000xww&AN=2324349&site=ehost-live&scope=site
2. Bums S. Hands-On Network Programming with C# and .NET Core: Build Robust Network Applications with C# and .NET Core. Birmingham: Packt Publishing, 2019. 473 p. Pieejams: datubāzē EBSCO e-book academic collection https://search-ebscohost-com.ezproxy.llu.lv/login.aspx?direct=true&db=e000xww
3. Malhotra D., Malhotra N. Data Structures and Program Design Using C: A Self-Teaching Introduction. Dulles, Virginia: Mercury Learning & Information, 2019. 553 p. Pieejams: datubāzē EBSCO e-book academic collection https://search-ebscohost-com.ezproxy.llu.lv/login.aspx?direct=true&db=e000xww
4. C# Tutorial [tiešsaiste]. Pieejams: https://www.w3schools.com/cs/index.php

Papildliteratūra

1. Matzinger C. Hands-On Data Structures and Algorithms with Rust: Learn Programming Techniques to Build Effective, Maintainable, and Readable Code in Rust 2018. Birmingham, UK: Packt Publishing, 2019. 306 p. Pieejams: datubāzē https://search-ebscohost-com.ezproxy.llu.lv/login.aspx?direct=true&db=e000xww&AN=2012512&site=ehost-live&scope=siteEBSCO e-book academic collection
2. Chopra R., Raheja S. Design and Analysis of Algorithms. [S.l.]: NEW AGE International Publishers, 2020. 641 p. Pieejams: datubāzē EBSCO e-book academic collection https://search-ebscohost-com.ezproxy.llu.lv/login.aspx?direct=true&db=e000xww&AN=2706813&site=ehost-live&scope=site

Periodika un citi informācijas avoti

• EBSCO e-book academic collection. Pieejams: https://web-p-ebscohost-com.ezproxy.llu.lv/ehost/search/selectdb?vid=0&sid=8715372b-5e1d-4646-9ecc-530bf329861f%40redis

Piezīmes

ITF profesionālās augstākās izglītības bakalaura studiju programmas Informācijas tehnoloģijas ilgtspējīgai attīstībai un ITF akadēmiskās bakalauru studiju programmas Datorvadība un datorzinātne studentiem.