Algorithms and Data Structures
Field of study: Applied Computer Science
Programme code: W4-S1IS19.2023

Module name: | Algorithms and Data Structures |
---|---|
Module code: | W4-IS-S1-ASD |
Programme code: | W4-S1IS19.2023 |
Semester: |
|
Language of instruction: | Polish |
Form of verification: | exam |
ECTS credits: | 6 |
Purpose and description of the content of education: | Celem modułu jest zdobycie przez studiującego wiedzy i umiejętności w zakresie następujących treści kształcenia:
1. Elementy algorytmiki: problem i jego specyfikacja; algorytm i różne sposoby jego zapisu.
2. Elementy analizy algorytmów. Rozmiar danych, złożoność obliczeniowa (czasowa i pamięciowa). Typy złożoności: pesymistyczna, optymistyczna,
średnia. Notacja asymptotyczna, rzędy wielkości funkcji.
3. Algorytmy rekurencyjne, przykłady. Rozwiązywanie równań rekurencyjnych na potrzeby analizy algorytmów rekurencyjnych.
4. Wyszukiwanie. Analiza wybranych metod: wyszukiwanie liniowe, wyszukiwanie binarne, wyszukiwanie interpolacyjne. Problem wyboru (selekcja).
5. Sortowanie. Analiza wybranych algorytmów: sortowanie przez wstawianie, przez selekcję, przez scalanie, przez kopcowanie, szybkie. Model drzew decyzyjnych i twierdzenie o dolnym ograniczeniu na czas działania algorytmów sortujących za pomocą porównań. Sortowanie w czasie liniowym.
6. Techniki projektowania algorytmów: dziel i zwyciężaj, programowanie dynamiczne, algorytmy zachłanne, przeszukiwanie z nawrotami. Ilustracja omawianych metod na konkretnych przykładach.
7. Abstrakcyjne struktury danych: stosy, kolejki, kolejki priorytetowe, słowniki. Metody implementacji powyższych struktur (listy, kopce binarne, drzewa, drzewa poszukiwań binarnych) i ich zastosowania. |
List of modules that must be completed before starting this module (if necessary): | not applicable |
Learning outcome of the module | Codes of the learning outcomes of the programme to which the learning outcome of the module is related [level of competence: scale 1-5] |
---|---|
zna pojęcie algorytmu i różne sposoby jego zapisu; zna podstawowe własności algorytmów; rozumie potrzebę dowodzenia poprawności semantycznej algorytmów [IS-S1-ASD_1] |
IS1_W01 [2/5] |
zna i rozumie pojęcie złożoności obliczeniowej (czasowej i pamięciowej) oraz notacji asymptotycznej [IS-S1-ASD_2] |
IS1_W02 [5/5] |
potrafi obliczać złożoność czasową prostych algorytmów, w tym algorytmów rekurencyjnych [IS-S1-ASD_3] |
IS1_U05 [3/5] |
zna i potrafi zapisywać klasyczne algorytmy w postaci schematu blokowego, listy kroków, w pseudokodzie
oraz w wybranym języku programowania; zna i omawia sytuacje, w których wykorzystuje się klasyczne algorytmy [IS-S1-ASD_4] |
IS1_W02 [5/5] |
zna i potrafi stosować techniki algorytmiczne (metoda ,,dziel i zwyciężaj'', programowanie dynamiczne, programowanie zachłanne, przeszukiwanie z nawrotami) [IS-S1-ASD_5] |
IS1_W02 [5/5] |
zna abstrakcyjne typy danych (stos, kolejka, kolejka priorytetowa, słownik) i ich realizacje komputerowe (listy, tablice, kopce binarne, drzewa, drzewa poszukiwań binarnych); potrafi konstruować algorytmy z wykorzystaniem poznanych struktur danych [IS-S1-ASD_6] |
IS1_W02 [5/5] |
dostrzega związek pomiędzy czasem działaniem programu komputerowego a doborem różnych struktur danych i algorytmów w jego implementacji [IS-S1-ASD_7] |
IS1_W02 [4/5] |
potrafi w sposób zrozumiały, w mowie i piśmie przedstawić poznaną wiedzę [IS-S1-ASD_8] |
IS1_U04 [2/5] |
Form of teaching | Number of hours | Methods of conducting classes | Assessment of the learning outcomes | Learning outcomes |
---|---|---|---|---|
lecture [IS-S1-ASD_fs_1] | 30 |
Formal lecture/ course-related lecture [a01] Problem-based lecture [b01] Lecture-discussion [b02] Screen presentation [c07] Self-education [f01] Individual work with a text [f02] |
exam |
IS-S1-ASD_1 |
laboratory classes [IS-S1-ASD_fs_2] | 30 |
Activating method – flipped classroom [b09] Working with a computer [d01] Self-education [f01] Individual work with a text [f02] |
course work |
IS-S1-ASD_4 |
discussion classes [IS-S1-ASD_fs_3] | 15 |
Activating method – flipped classroom [b09] Self-education [f01] Individual work with a text [f02] |
course work |
IS-S1-ASD_1 |
The student's work, apart from participation in classes, includes in particular: | ||
---|---|---|
Name | Category | Description |
Literature reading / analysis of source materials [a02] | Preparation for classes | reading the literature indicated in the syllabus; reviewing, organizing, analyzing and selecting source materials to be used in class |
Developing practical skills [a03] | Preparation for classes | activities involving the repetition, refinement and consolidation of practical skills, including those developed during previous classes or new skills necessary for the implementation of subsequent elements of the curriculum (as preparation for class participation) |
Consulting materials complementary to those indicated in the syllabus [a04] | Preparation for classes | agreeing on materials complementary to those indicated in the syllabus, supporting the implementation of tasks resulting from or necessary for class participation |
Determining the stages of task implementation contributing to the verification of learning outcomes [c01] | Preparation for verification of learning outcomes | devising a task implementation strategy embracing the division of content, the range of activities, implementation time and/or the method(s) of obtaining the necessary materials and tools, etc. |
Studying the literature used in and the materials produced in class [c02] | Preparation for verification of learning outcomes | exploring the studied content, inquiring, considering, assimilating, interpreting it, or organizing knowledge obtained from the literature, documentation, instructions, scenarios, etc., used in class as well as from the notes or other materials/artifacts made in class |
Implementation of an individual or group assignment necessary for course/phase/examination completion [c03] | Preparation for verification of learning outcomes | a set of activities aimed at performing an assigned task, to be executed out of class, as an obligatory phase/element of the verification of the learning outcomes assigned to the course |
Analysis of the corrective feedback provided by the academic teacher on the results of the verification of learning outcomes [d01] | Consulting the results of the verification of learning outcomes | reading through the academic teacher’s comments, assessments and opinions on the implementation of the task aimed at checking the level of the achieved learning outcomes |
Development of a corrective action plan as well as supplementary/corrective tasks [d02] | Consulting the results of the verification of learning outcomes | reviewing and selecting tasks and activities enabling the elimination of errors indicated by the academic teacher, their verification or correction resulting in completing the task with at least the minimum passing grade |
Attachments |
---|
Module description (PDF) |
Syllabuses (USOSweb) | ||
---|---|---|
Semester | Module | Language of instruction |
(no information given) |