Algorytmy i struktury danych WM-FI-S1-E4-ALSD
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ą abstrakcyjne typy danych i podstawowe struktury danych, w tym listy, stosy, kolejki, drzewa i grafy, a także 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. Omawiane metody i struktury danych są również rozpatrywane w kontekście przetwarzania i analizy danych oraz realizacji obliczeń występujących w zastosowaniach naukowych.
Dyscyplina naukowa, do której odnoszą się efekty uczenia się
E-Learning
Grupa przedmiotów ogólnouczenianych
Koordynatorzy przedmiotu
Opis nakładu pracy studenta w ECTS
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 (FIZ1_W15),
W2 – opisuje podstawowe struktury danych, wykonywane na nich operacje oraz wyjaśnia kryteria doboru struktur danych do rozwiązywanego problemu (FIZ1_W15),
W3 – charakteryzuje klasyczne algorytmy wyszukiwania, sortowania i przetwarzania danych oraz wyjaśnia zależność między zastosowanym algorytmem, sposobem reprezentacji danych i kosztem obliczeń (FIZ1_W15).
ĆWICZENIA
Student:
U1 – dobiera sposoby reprezentacji i struktury danych odpowiednie do rozwiązywanego problemu oraz wykorzystuje je do przetwarzania i organizowania danych (FIZ1_U02),
U2 – projektuje i implementuje algorytmy z wykorzystaniem poznanych technik i struktur danych oraz wykorzystuje narzędzia informatyczne do analizy ich działania i efektywności (FIZ1_U09),
U3 – stosuje poznane algorytmy i struktury danych do rozwiązywania problemów związanych z przetwarzaniem i analizą danych oraz obliczeniami naukowymi (FIZ1_U02, FIZ1_U09),
K1 – formułuje pytania i identyfikuje brakujące elementy rozumowania podczas analizy poprawności, złożoności i sposobu działania algorytmów (FIZ1_K02).
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: