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:
  • winter semester 2025/2026
  • winter semester 2024/2025
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] IS1_W02 [5/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] IS1_U06 [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] IS1_U05 [3/5] IS1_U06 [3/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] IS1_U05 [4/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] IS1_U05 [4/5] IS1_U06 [3/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 IS-S1-ASD_2 IS-S1-ASD_4 IS-S1-ASD_5 IS-S1-ASD_8
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 IS-S1-ASD_5 IS-S1-ASD_6 IS-S1-ASD_7
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 IS-S1-ASD_2 IS-S1-ASD_3 IS-S1-ASD_4 IS-S1-ASD_5 IS-S1-ASD_6 IS-S1-ASD_7 IS-S1-ASD_8
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)
Information concerning module syllabuses might be changed during studies.
Syllabuses (USOSweb)
Semester Module Language of instruction
(no information given)