Algorytmy i struktury danych WM-I-S1-E4-ASD
Przedmiot obejmuje podstawowe zagadnienia związane z projektowaniem, analizą i implementacją algorytmów oraz doborem struktur danych odpowiednich do rozwiązywanego problemu. Omawiane są metody oceny poprawności i złożoności algorytmów, asymptotyczna analiza kosztu obliczeń oraz zależność między sposobem reprezentacji danych a efektywnością ich przetwarzania.
W ramach kursu przedstawiane są podstawowe abstrakcyjne typy danych i struktury danych, w tym listy, stosy, kolejki, drzewa i grafy, a także bardziej zaawansowane struktury służące do efektywnego przechowywania, wyszukiwania i organizowania danych. Omawiane są klasyczne algorytmy wyszukiwania, sortowania, przetwarzania drzew i grafów oraz wybrane techniki projektowania algorytmów, w szczególności rekurencja, metoda dziel i zwyciężaj, algorytmy zachłanne i programowanie dynamiczne.
Szczególny nacisk położony jest na analizę zależności między algorytmem, zastosowaną strukturą danych i kosztem obliczeń. Studenci uczą się projektować i implementować rozwiązania problemów algorytmicznych, analizować ich poprawność i złożoność oraz porównywać alternatywne sposoby rozwiązania tego samego problemu.
Dyscyplina naukowa, do której odnoszą się efekty uczenia się
E-Learning
W cyklu 2019/20_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2021/22_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2022/23_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2023/24_L: E-Learning | W cyklu 2024/25_L: E-Learning | W cyklu 2025/26_L: E-Learning (pełny kurs) | W cyklu 2026/27_L: E-Learning (pełny kurs) |
Grupa przedmiotów ogólnouczenianych
Koordynatorzy przedmiotu
W cyklu 2026/27_L: | W cyklu 2023/24_L: | W cyklu 2021/22_L: | W cyklu 2025/26_L: | W cyklu 2019/20_L: | W cyklu 2024/25_L: | W cyklu 2022/23_L: |
Opis nakładu pracy studenta w ECTS
W cyklu 2022/23_L: Wykład:
uczestnictwo w zajęciach: 30h
lektury, praca własna: 20h
razem: 50h, 2 punkty ECTS
Ćwiczenia:
uczestnictwo w zajęciach: 30h
praca własna: 40h
razem: 70h, 3 punkty ECTS | W cyklu 2023/24_L: Wykład:
uczestnictwo w zajęciach: 30h
lektury, praca własna: 20h
razem: 50h, 2 punkty ECTS
Ćwiczenia:
uczestnictwo w zajęciach: 30h
praca własna: 44h
razem: 75h, 3 punkty ECTS | W cyklu 2024/25_L: Wykład:
uczestnictwo w zajęciach: 30h
lektury, praca własna: 20h
razem: 50h, 2 punkty ECTS
Ćwiczenia:
uczestnictwo w zajęciach: 30h
praca własna: 44h
razem: 75h, 3 punkty ECTS | W cyklu 2025/26_L: Wykład:
uczestnictwo w zajęciach: 30h
lektury, praca własna: 20h
razem: 50h, 2 punkty ECTS
Ćwiczenia:
uczestnictwo w zajęciach: 30h
praca własna: 44h
razem: 75h, 3 punkty ECTS | W cyklu 2026/27_L: WYKŁAD
uczestnictwo w zajęciach: 30 godz.
udział w egzaminach poza zajęciami: 3 godz.
udział w konsultacjach: 4 godz.
przygotowanie do egzaminu: 13 godz.
Łącznie 50 godz.
1,5 ECTS - kontakt bezpośredni z prowadzącym
0,5 ECTS - praca własna
ĆWICZENIA
uczestnictwo w zajęciach: 30 godz.
udział w konsultacjach: 4 godz.
przygotowanie do zajęć i realizacja zadań: 30 godz.
przygotowanie do zaliczenia: 11 godz.
Łącznie 75 godz.
1,4 ECTS - kontakt bezpośredni z prowadzącym
1,6 ECTS - praca własna |
Poziom przedmiotu
Symbol/Symbole kierunkowe efektów uczenia się
Typ przedmiotu
Wymagania wstępne
Efekty uczenia się
WYKŁAD
Student:
W1 – charakteryzuje podstawowe techniki projektowania algorytmów, w tym rekurencję, metodę dziel i zwyciężaj, algorytmy zachłanne i programowanie dynamiczne, oraz wyjaśnia podstawowe metody analizy poprawności i złożoności algorytmów (I1_W05),
W2 – opisuje podstawowe struktury danych, operacje wykonywane na tych strukturach oraz ich złożoność, a także wyjaśnia kryteria doboru struktury danych do rozwiązywanego problemu (I1_W06),
W3 – charakteryzuje klasyczne algorytmy rozwiązywania typowych problemów informatycznych, w szczególności wyszukiwania, sortowania, organizacji danych oraz przetwarzania drzew i grafów, i analizuje ich podstawowe własności (I1_W07).
ĆWICZENIA
Student:
U1 – stosuje wiedzę matematyczną i informatyczną do formułowania i analizowania problemów algorytmicznych oraz konstruowania ich rozwiązań (I1_U02),
U2 – projektuje, implementuje i analizuje algorytmy z wykorzystaniem poznanych technik oraz ocenia ich poprawność i koszt obliczeniowy (I1_U03),
U3 – dobiera i implementuje odpowiednie sposoby reprezentacji danych oraz struktury danych i ocenia ich wpływ na efektywność algorytmów (I1_U04),
U4 – stosuje metody analizy kosztu algorytmów iteracyjnych i rekurencyjnych oraz wybrane metody weryfikacji ich poprawności i własności zakończenia (I1_U05).
Kryteria oceniania
Dla wszystkich efektów przyjmuje się następujące kryteria oceny we wszystkich formach weryfikacji:
ocena 5: osiągnięty w pełni (bez uchwytnych niedociągnięć),
ocena 4,5: osiągnięty niemal w pełni i nie są spełnione kryteria przyznania wyższej oceny,
ocena 4: osiągnięty w znacznym stopniu i nie są spełnione kryteria przyznania wyższej oceny,
ocena 3,5: osiągnięty w znacznym stopniu – z wyraźną przewagą pozytywów – i nie są spełnione kryteria przyznania wyższej oceny,
ocena 3: osiągnięty dla większości przypadków objętych weryfikacją i nie są spełnione kryteria przyznania wyższej oceny,
ocena 2: nie został osiągnięty dla większości przypadków objętych weryfikacją.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: