Algorytmy i struktury danych
Kierunek studiów: Matematyka
Kod programu: W4-N2MT19.2024

Nazwa modułu: | Algorytmy i struktury danych |
---|---|
Kod modułu: | W4-MT-N2-23-AiSD |
Kod programu: | W4-N2MT19.2024 |
Semestr: | semestr zimowy 2024/2025 |
Język wykładowy: | polski |
Forma zaliczenia: | egzamin |
Punkty ECTS: | 5 |
Cel i opis treści kształcenia: | Celem modułu jest zapoznanie studentów z wybranymi strukturami danych oraz omówienie wybranych algorytmów i metod konstruowania algorytmów. W trakcie laboratoriów, które będą odbywały się w pracowni komputerowej, studenci będą mieli możliwość napisania programów wykorzystujących omawiany materiał. Natomiast w trakcie konwersatoriów, odbywających się w klasycznej sali tablicowej, będzie możliwość głębszego i teoretycznego omówienia stosownego materiału.
1. Typy złożoności: pesymistyczna, optymistyczna i średnia.
2. Rozwiązywanie równań rekurencyjnych na potrzeby analizy algorytmów rekurencyjnych. Twierdzenie o rekurencji uniwersalnej.
3. Omówienie wybranych problemów i algorytmów w tym m.in. tych wymienionych w podstawie programowej kształcenia ogólnego przedmiotu Informatyka w szkole ponadpodstawowej.
4. Abstrakcyjne struktury danych: stosy, kolejki, kolejki priorytetowe, słowniki. Metody implementacji powyższych struktur (tablice, listy dowiązane, kopce binarne, drzewa, drzewa poszukiwań binarnych) i ich zastosowania (np. do zamiany klasycznego wyrażenia na postać w odwrotnej notacji polskiej i obliczanie jego wartości na podstawie tej postaci).
5. Wybrane algorytmy grafowe.
6. Model drzew decyzyjnych i twierdzenie o dolnym ograniczeniu na czas działania algorytmów sortujących za pomocą porównań. Sortowanie w czasie liniowym. |
Lista modułów koniecznych do zaliczenia przed przystąpieniem do tego modułu (o ile to konieczne): | nie dotyczy |
Efekt modułowy | Kody efektów kierunkowych do których odnosi się efekt modułowy [stopień realizacji: skala 1-5] |
---|---|
zna i zapisuje klasyczne algorytmy, w postaci iteracyjnej oraz rekurencyjnej, za pomocą listy kroków, schematu blokowego lub pseudokodu oraz implementuje je wybranym języku programowania; zna i omawia sytuacje, w których wykorzystuje się klasyczne algorytmy [AiSD_1] |
K_W04 [2/5] |
zna podstawowe własności algorytmów; prezentuje przykłady zastosowań algorytmiki w innych dziedzinach nauki [AiSD_2] |
K_W04 [2/5] |
zna i rozumie pojęcie złożoności obliczeniowej (czasowej i pamięciowej) oraz notacji asymptotycznej [AiSD_3] |
K_W04 [3/5] |
porównuje działanie różnych algorytmów dla wybranego problemu, analizuje algorytmy na podstawie ich gotowych implementacji [AiSD_4] |
K_U07 [2/5] |
zna podstawowe abstrakcyjne typy danych (stos, kolejka, kolejka priorytetowa, słownik) i ich realizacje komputerowe (listy, tablice, kopce binarne, drzewa, drzewa poszukiwań binarnych); potrafi konstruować proste algorytmy z wykorzystaniem poznanych struktur danych [AiSD_5] |
K_W04 [3/5] |
dostrzega związek pomiędzy czasem działaniem programu komputerowego a doborem różnych struktur danych i algorytmów w jego implementacji; do realizacji rozwiązania problemu dobiera odpowiednią metodę lub technikę algorytmiczną i struktury danych [AiSD_6] |
K_U07 [2/5] |
projektuje i tworzy rozbudowane programy w procesie rozwiązywania problemów, wykorzystuje w programach dobrane do algorytmów struktury danych, w tym struktury dynamiczne i korzysta z dostępnych bibliotek dla tych struktur [AiSD_7] |
K_U07 [2/5] |
Forma prowadzonych zajęć | Liczba godzin | Metody prowadzenia zajęć | Sposób weryfikacji efektów uczenia się | Efekty uczenia się |
---|---|---|---|---|
wykład [AiSD_fpz1] | 15 |
Wykład informacyjny/kursowy [a01] Opis [a03] Prezentacja [c07] |
egzamin |
AiSD_1 |
laboratorium [AiSD_fpz_2] | 15 |
Metody aktywizujące: peer learning [b08] Metody aktywizujące: flipped classroom [b09] Praca z komputerem [d01] Ćwiczenie laboratoryjne/doświadczenie [e01] Indywidualna praca z tekstem [f02] |
zaliczenie |
AiSD_1 |
konwersatorium [AiSD_fpz_3] | 15 |
Metody aktywizujące: peer learning [b08] Metody aktywizujące: flipped classroom [b09] Praca z innym narzędziem dydaktycznym [d03] Indywidualna praca z tekstem [f02] |
zaliczenie |
AiSD_1 |
Praca studenta poza udziałem w zajęciach obejmuje w szczególności: | ||
---|---|---|
Nazwa | Kategoria | Opis |
Kwerenda materiałów i przegląd działań niezbędnych do uczestnictwa w zajęciach [a01] | Przygotowanie do zajęć | przegląd literatury, dokumentacji, narzędzi i materiałów oraz specyfiki i zakresu działań wskazanych w sylabusie jako wymagane do pełnego uczestnictwa w zajęciach |
Czytanie literatury / analiza materiałów źródłowych [a02] | Przygotowanie do zajęć | czytanie literatury wskazanej w sylabusie; przegląd, porządkowanie, analiza i wybór materiałów źródłowych do wykorzystania w ramach zajęć |
Ćwiczenie praktycznych umiejętności [a03] | Przygotowanie do zajęć | czynności polegające na powtarzaniu, doskonaleniu i utrwalaniu praktycznych umiejętności, w tym ćwiczonych podczas odbytych wcześniej zajęć lub nowych, niezbędnych z punktu widzenia realizacji kolejnych elementów programu (jako przygotowanie się uczestnictwa w zajęciach) |
Konsultowanie materiałów uzupełniających [względem wskazanych w sylabusie] [a04] | Przygotowanie do zajęć | uzgadnianie dodatkowych do wskazanych w sylabusie materiałów, służących realizacji zadań wynikających z uczestnictwa w zajęciach lub na potrzeby przygotowania się do nich |
Zapoznanie się z zapisami sylabusa [b01] | Konsultowanie programu i organizacji zajęć | przeglądanie zawartości sylabusa i zapoznanie się z treścią jego zapisów |
Weryfikacja/dostosowanie/dyskutowanie zapisów w sylabusie [b02] | Konsultowanie programu i organizacji zajęć | konsultowanie treści sylabusa z potencjalną weryfikacją zapisów wymagających spełnienia specjalnych warunków uczestnictwa w zajęciach, np. wymagań technicznych, czasowych, przestrzennych, innych, w tym warunków uczestnictwa w zajęciach poza murami uczelni, zajęć organizowanych w blokach, organizowanych online, itp.; konsultowanie z potencjalnym udziałem opiekuna roku lub członkami grupy zajęciowej |
Konsultowanie harmonogramu [b03] | Konsultowanie programu i organizacji zajęć | zapoznanie z planem zajęć w celu optymalizacji uczestnictwa w zajęciach, w tym komplementarnych do zajęć kierunkowych; konsultowanie z potencjalnym udziałem tutora lub opiekuna roku |
Studiowanie wykorzystanej literatury oraz wytworzonych w ramach zajęć materiałów [c02] | Przygotowanie do weryfikacji efektów uczenia się | wgłębianie się, dociekanie, rozważanie, przyswajanie, interpretacja lub porządkowanie wiedzy pochodzącej z literatury, dokumentacji, instrukcji, scenariuszy, itd., wykorzystanych na zajęciach oraz z notatek lub innych materiałów/wytworów sporządzonych w ich trakcie |
Realizacja indywidualnego lub grupowego zadania zaliczeniowego/egz./etapowego [c03] | Przygotowanie do weryfikacji efektów uczenia się | zbiór czynności zmierzających do wykonania zadania zleconego do realizacji poza zajęciami, jako obligatoryjnego etapu/elementu weryfikacji przypisanych do tych zajęć efektów uczenia się |
Analiza korekt/informacji zwrotnej ze strony NA dotyczących wyników wer. ef. ucz. [d01] | Konsultowanie wyników weryfikacji efektów uczenia się | przegląd uwag, ocen i opinii sporządzonych przez NA odnoszących się do realizacji zadania sprawdzającego poziom osiągniętych efektów uczenia się |
Załączniki |
---|
Opis modułu (PDF) |
Sylabusy (USOSweb) | ||
---|---|---|
Semestr | Moduł | Język wykładowy |
(brak danych) |