Algorytmy i struktury danych WM-MA-ASD
Tematem kursu są struktury danych, algorytmy, sposoby ich projektowania, metody analizy kosztów algorytmów, metody weryfikacji algorytmów.
Celem kursu jest wprowadzenie studentów w metody konstrukcji efektywnych algorytmów i szacowania ich złożoności. Po jego ukończeniu student powinien znać podstawowe techniki konstruowania programów, działanie najważniejszych struktur danych oraz szacować złożoność algorytmów.
Zostaną przedstawione techniki służące rozwiązywaniu takich problemów jak wyszukiwanie, sortowanie, reprezentowanie i obliczenia na grafach. Będzie mowa o sposobach przechowywania i o organizacji danych. Przedstawione przykłady pozwolą uczestnikom kursu poznać klasyczne sposoby rozwiązywania problemów algorytmicznych. Zwrócimy też uwagę na ograniczenia złożonościowe algorytmów.
Po zakończeniu kursu student powinien umieć oszacować koszt prostego algorytmu, powinien rozumieć potrzebę uzasadniania poprawności algorytmów, umieć zastosować poznane techniki konstrukcji algorytmów i algorytmy do rozwiązywania nowych problemów.
Dyscyplina naukowa, do której odnoszą się efekty uczenia się
E-Learning
W cyklu 2022/23_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2020/21_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2024/25_L: E-Learning | W cyklu 2021/22_L: E-Learning (pełny kurs) z podziałem na grupy | W cyklu 2023/24_L: E-Learning | W cyklu 2019/20_L: E-Learning (pełny kurs) z podziałem na grupy |
Grupa przedmiotów ogólnouczenianych
Opis nakładu pracy studenta w ECTS
Poziom przedmiotu
Symbol/Symbole kierunkowe efektów uczenia się
Typ przedmiotu
Wymagania wstępne
Koordynatorzy przedmiotu
Efekty kształcenia
Wykład
Potrafi szacować złożoność algorytmu w terminach klas asymptotycznego wzrostu, potrafi wykazywać poprawność algorytmu (MA1_W03).
Zna podstawowe techniki algorytmiczne, struktury danych i algorytmy. Wie jak je wykorzystać aby zmniejszyć koszt projektowanego algorytmu (MA1_W08).
Ćwiczenia:
Rozpoznaje, kiedy problem ma charakter algorytmiczny i potrafi opisać algorytmiczną stronę takiego problemu, MA1_U25.
Potrafi skonstruować algorytm rozwiązujący dany problem, MA1_U26.
Potrafi posługiwać się technikami algorytmicznymi w zagadnieniach dotyczących matematyki dyskretnej, MA1_U29;
Jest gotowy do analizy, czy problem można rozwiązać algorytmicznie, jest gotowy do odszukania w literaturze potrzebnych rozwiązań algorytmicznych, MA1_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
Więcej informacji o poziomie przedmiotu, roku studiów (i/lub semestrze) w którym się odbywa, o rodzaju i liczbie godzin zajęć - szukaj w planach studiów odpowiednich programów. Ten przedmiot jest związany z programami:
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: