Kod przedmiotu: |
1000-112bWI2b |
Kod Erasmus / ISCED: |
11.101
Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. /
(0541) Matematyka
Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO. |
Nazwa przedmiotu: |
Wstęp do informatyki II (potok II) |
Jednostka: |
Wydział Matematyki, Informatyki i Mechaniki |
Grupy: |
Przedmioty obowiązkowe dla I roku matematyki
|
Punkty ECTS i inne: |
(brak)
Podstawowe informacje o zasadach przyporządkowania punktów ECTS: - roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
- tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
- 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
- tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
- nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
zobacz reguły punktacji
|
Język prowadzenia: |
polski
|
Rodzaj przedmiotu: |
obowiązkowe
|
Założenia (opisowo): |
Oczekuje się dobrej znajomości zagadnień ujętych w sylabusie przedmiotu Wstęp do informatyki I.
|
Skrócony opis: |
Celem wykładu jest zapoznanie studentów z zasadami rozwiązywania problemów przy użyciu komputerów oraz praktyczna implementacja algorytmów.
|
Pełny opis: |
- Elementy analizy złożoności obliczeniowej: Rozmiar zadania. Złożoność czasowa i pamięciowa. Rząd złożoności. Wpływ rzędu złożoności na praktyczną przydatność algorytmu. Obliczanie złożoności prostych algorytmów (sortowanie i wyszukiwanie binarne). Obliczanie złożoności algorytmów rekurencyjnych (pamięciowej i czasowej).
- Abstrakcyjne struktury danych i metody ich implementacji: Stosy, kolejki, kolejki priorytetowe. Przykłady użycia (algorytm Heap-Sort). Implementacja tablicowa. Wskaźniki. Dynamiczna alokacja pamięci. Listy. Listowa implementacja stosu, kolejki i kolejki priorytetowej. Drzewa binarnych wyszukiwań.
- Grafy i algorytmy grafowe: Grafy i ich reprezentacje. Podstawowe algorytmy grafowe. Przeszukiwanie w głąb i wszerz.
- Informacja o problemach NP-zupełnych i nierozstrzygalnych.
|
Literatura: |
- Cormen T.H., Leiserson C.E., Rivest R.L., Stein C. "Wprowadzenie do algorytmów", WNT, Warszawa, 2005.
- L. Banachowski, K. Diks, W. Rytter, "Algorytmy i struktury danych", WNT, Warszawa 2002.
- N. Wirth, "Algorytmy + struktury danych = programy".
- N. Wirth, "Wstęp do programowania systematycznego".
- D. Harel, "Rzecz o istocie informatyki".
- Podręcznik do nauki wybranego języka programowania.
|
Efekty uczenia się: |
Zna materiał wyłożony w trakcie wykładu i utrwalony na ćwiczeniach oraz laboratorium.
Potrafi wykorzystać zdobytą wiedzę do rozwiązywania zadań.
W szczególności:
- Potrafi przeprowadzić analizę kosztu algorytmów, wykorzystując równania różnicowe oraz twierdzenie o rekurencji uniwersalnej, m.in. algorytmów sortowania: Quicksort, Mergesort, itp.
- Rozumie wpływ kosztu na praktyczną przydatność algorytmu oraz różnicę między kosztem obliczeniowym a pamięciowym.
- Potrafi wykorzystać abstrakcyjne struktury danych (stosy, kolejki, kolejki priorytetowe, kopce, listy jedno- i dwukierunkowe, drzewa, grafy), zna podstawowe algorytmy obsługi tych struktur oraz umie zaimplementować je w omawianym na wykładzie języku programowania imperatywnego.
- Zna przykłady klasycznych zastosowań abstrakcyjnych struktur danych oraz koszty algorytmów na nich opartych.
- Zna i potrafi wykorzystać w praktyce techniki programistyczne takie jak rekurencja, zasada "dziel i rządź", programowanie zachłanne i dynamiczne.
|