1 KARTA KURSU Algorytmy i struktury danych
Transkrypt
1 KARTA KURSU Algorytmy i struktury danych
KARTA KURSU Nazwa Algorytmy i struktury danych Nazwa w j. ang. Algorithms and data structures Punktacja ECTS* Kod Koordynator dr inż. Wojciech Folta 5 Zespół dydaktyczny: dr inż. Wojciech Folta dr inż. Magdalena Andrzejewska dr Zdobysław Świerczyński Opis kursu (cele kształcenia) Celem kształcenia jest zapoznanie studentów z projektowaniem, analizą i programowaniem algorytmów. W ramach przedmiotu studenci uzyskają przygotowanie w zakresie analizy podstawowych algorytmów i struktur danych. Kurs jest prowadzony w języku polskim. Warunki wstępne Pojęcie algorytmu i jego struktura. Podstawowe konstrukcje programistyczne. Implementacje prostych algorytmów w dowolnym języku programowania wysokiego poziomu. Wiedza Umiejętności Kursy Pisanie i uruchamianie prostych programów. Wstępne kursy nie są wymagane. Efekty kształcenia Efekt kształcenia dla kursu Odniesienie do efektów kierunkowych Po zakończeniu kursu student: Wiedza W01: opisuje podstawowe struktury danych, wykonywane na nich operacje i związane z nimi algorytmy. K_W04 W02: rozróżnia techniki projektowania algorytmów: dziel i rządź, programowanie dynamiczne, algorytmy zachłanne, przeszukiwanie z nawrotami, heurystyki. K_W05, K_W07 W03: zna abstrakcyjne struktury danych i posiada wiedzę o ich implementacji: listy, stosy, kolejki, grafy, drzewa, słowniki, drzewa poszukiwań binarnych. K_W04, K_W06 1 Odniesienie do efektów kierunkowych Efekt kształcenia dla kursu Po zakończeniu kursu student: U01: potrafi analizować algorytmy komputerowe z wykorzystaniem podstawowych technik algorytmicznych i struktur danych oraz zapisywać je Umiejętności w języku programowania. K_U01 U02: programuje podstawowe algorytmy grafowe: przeszukiwanie wszerz i w głąb. K_U01, K_U05 U03: rozwiązuje problemy algorytmiczne z wykorzystaniem rekurencji i dynamicznego przydziału pamięci. K_U01, K_U05 U04: przeprowadza weryfikację poprawności i analizę ich złożoności prostych algorytmów. K_U02 Odniesienie do efektów kierunkowych Efekt kształcenia dla kursu Kompetencje Po zakończeniu kursu student: społeczne K01: rozumie konieczność uzupełniania wiedzy o nowe rozwiązania algorytmiczne, powstające w związku z dynamicznym rozwojem informatyki i nowych technologii. K_K01 Studia stacjonarne Organizacja Forma zajęć Liczba godzin Ćwiczenia w grupach Wykład (W) A K L 30 S P E P E 30 Studia niestacjonarne Organizacja Forma zajęć Liczba godzin Ćwiczenia w grupach Wykład (W) 15 A K L S 25 Opis metod prowadzenia zajęć Podczas pracy laboratoryjnej studenci będą rozwiązywać problemy zadane przez prowadzącego zajęcia programując je w języku wysokiego poziomu. Na ćwiczeniach na bieżąco weryfikowana będzie wiedza przekazywana podczas wykładów. 2 X X X X X X X W01 W02 W03 U01 U02 U03 U04 K01 Kryteria oceny X X X X X Inne Egzamin pisemny Egzamin ustny Praca pisemna (esej) Referat Udział w dyskusji Projekt grupowy Projekt indywidualny Praca laboratoryjna Zajęcia terenowe Ćwiczenia w szkole Gry dydaktyczne E – learning Formy sprawdzania efektów kształcenia X X X X Ocenę dobrą lub bardzo dobrą może uzyskać student, który wykaże się stosowną znajomością algorytmów, metod ich konstrukcji oraz umiejętnością analizy. Uwagi Treści merytoryczne (wykaz tematów) 1. Podstawowe struktury danych i wykonywane na nich operacje. 2. Metody weryfikacji poprawności programów. 3. Podstawy analizy algorytmów. Techniki projektowania algorytmów: dziel i rządź, programowanie dynamiczne, algorytmy zachłanne, przeszukiwanie z nawrotami, heurystyki. 4. Podstawowe algorytmy: sortowanie, selekcja, wyszukiwanie. 5. Abstrakcyjne struktury danych i ich implementacje: listy, stosy, kolejki, grafy, drzewa, słowniki, drzewa poszukiwań binarnych, haszowanie, kolejki priorytetowe. 6. Podstawowe algorytmy grafowe: przeszukiwanie wszerz i w głąb. 7. Problemy obliczeniowo trudne: NP-zupełność, nierozstrzygalność. Wykaz literatury podstawowej Wybrane rozdziały: 1. Wirh N., Algorytmy + struktury danych = programy, Wydawnictwo WNT 1980 2. Arnold R.R., Hill H.C., Nichols A.V., Wprowadzenie do przetwarzania danych, Wydawnictwo WNT 1971 3. Turski W.M., Struktury danych, Wydawnictwo WNT 1971 Wykaz literatury uzupełniającej 1. Harel D., Rzecz o istocie informatyki. Algorytmika, Wydawnictwo WNT 2001 3 Bilans godzinowy zgodny z CNPS (Całkowity Nakład Pracy Studenta) – studia stacjonarne Liczba godzin w kontakcie z prowadzącymi Liczba godzin pracy studenta bez kontaktu z prowadzącymi Wykład 30 Konwersatorium (ćwiczenia, laboratorium itd.) 30 Pozostałe godziny kontaktu studenta z prowadzącym 15 Lektura w ramach przygotowania do zajęć 30 Przygotowanie krótkiej pracy pisemnej lub referatu po zapoznaniu się z niezbędną literaturą przedmiotu Przygotowanie projektu lub prezentacji na podany temat (praca w grupie) Przygotowanie do egzaminu 20 Ogółem bilans czasu pracy 125 Liczba punktów ECTS w zależności od przyjętego przelicznika 5 Bilans godzinowy zgodny z CNPS (Całkowity Nakład Pracy Studenta) – studia niestacjonarne Liczba godzin w kontakcie z prowadzącymi Liczba godzin pracy studenta bez kontaktu z prowadzącymi Wykład 15 Konwersatorium (ćwiczenia, laboratorium itd.) 25 Pozostałe godziny kontaktu studenta z prowadzącym 15 Lektura w ramach przygotowania do zajęć 50 Przygotowanie krótkiej pracy pisemnej lub referatu po zapoznaniu się z niezbędną literaturą przedmiotu Przygotowanie projektu lub prezentacji na podany temat (praca w grupie) Przygotowanie do egzaminu 20 Ogółem bilans czasu pracy 125 Liczba punktów ECTS w zależności od przyjętego przelicznika 5 4