- Nazwa przedmiotu:
- Algorytmy i struktury danych I
- Koordynator przedmiotu:
- dr inż. Paweł Kotowski
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Informatyka
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- Semestr nominalny:
- 3 / rok ak. 2013/2014
- Liczba punktów ECTS:
- 6
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 1. godziny kontaktowe - 60 godz. w tym
a. obecność na wykładach – 30 godz.
b. obecność na ćwiczeniach– 30 godz.
2. przygotowanie do zajęć –90 godz., w tym
a. konsultacje – 5 godz.
b. przygotowanie się do ćwiczeń – 15 godz.
c. przygotowanie się do kolokwiów – 40 godz.
d. Przygotowanie się do egzaminu i obecność na egzaminie – 30 godz.
Razem nakład pracy studenta 150 godz. = 6 pkt. ECTS
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- 1. obecność na wykładach i ćwiczeniach – 60 godz.
2. konsultacje– 5 godz.
Razem 65 godz., co odpowiada 2 pkt. ECTS
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład30h
- Ćwiczenia30h
- Laboratorium0h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Podstawy programowania
- Limit liczby studentów:
- Bez limitu
- Cel przedmiotu:
- Celem przedmiotu jest uzyskanie wiedzy na temat podstawowych struktur danych oraz metod projektowania i oceny efektywnych algorytmów komputerowych. Po ukończeniu kursu studenci powinni posiadać praktyczne umiejętności opracowywania oraz oceny efektywnych algorytmów, wykorzystujących proste i złożone struktury danych.
- Treści kształcenia:
- 1. Wprowadzenie
Podstawowe struktury danych
Poprawność, złożoność i metody projektowania algorytmów
2. Sortowanie
Sortowanie wewnętrzne przez porównania, sortowanie pozycyjne
Sortowanie przez zliczanie
Sortowanie zewnętrzne
Zadanie wyboru
3. Wyszukiwanie
Wyszukiwanie w tablicach
Drzewa wyszukiwań BST, AVL optymalne, samoorganizujące się
Wyszukiwanie pozycyjne
Drzewa Bayera, 2-3 i 2-3-4 drzewa
Kodowanie mieszające
4. Kolejki priorytetowe
Kopce złączalne
Kolejki dwumianowe
5. Algorytmy UNION-FIND
Reprezentacja listowa
Reprezentacja drzewiasta
- Metody oceny:
- Na ocenę końcową wpływają:
2 kolokwia semestralne (2x20 pkt)
egzamin końcowy (40pkt)
egzamin ustny
Warunkiem koniecznym dopuszczenia do egzaminu ustnego jest uzyskanie 40 pkt.
Istnieje możliwość zwolnienia z egzaminu pisemnego w przypadku uzyskania z ćwiczeń 35 pkt.
- Egzamin:
- tak
- Literatura:
- A.V. Aho, J.E. Hopcroft, J.D.Ullman, Projektowanie i analiza algorytmów komputerowych, PWN, 1983.
L.Banachowski, K.Diks, W.Rytter, Algorytmy i struktury danych, WNT, 1997
R Sedgevick, Algotytmy w C++, Wydawnictwo RM, 1999
- Witryna www przedmiotu:
- brak
- Uwagi:
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Efekt W01
- Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną i szczegółową w zakresie podstawowych struktur danych oraz algorytmów
Weryfikacja: Kolokwium Egzamin
Powiązane efekty kierunkowe:
K_W04, K_W08
Powiązane efekty obszarowe:
T1A_W03, T1A_W04
- Efekt W02
- Zna podstawowe metody, techniki i narzędzia stosowane do analizy złożoności obliczeniowej algorytmów
Weryfikacja: Kolokwium Egzamin
Powiązane efekty kierunkowe:
K_W10
Powiązane efekty obszarowe:
T1A_W07
Profil ogólnoakademicki - umiejętności
- Efekt U01
- Ma umiejętność formułowania algorytmów i ich programowania z użyciem przynajmniej jednego z popularnych narzędzi
Weryfikacja: Kolokwium Egzamin
Powiązane efekty kierunkowe:
K_U11, K_U23
Powiązane efekty obszarowe:
T1A_U09, T1A_U14, T1A_U15, T1A_U09, T1A_U16
- Efekt U02
- Potrafi ocenić złożoność obliczeniową algorytmów
Weryfikacja: Kolokwium Egzamin
Powiązane efekty kierunkowe:
K_U14
Powiązane efekty obszarowe:
T1A_U09, T1A_U15
- Efekt U03
- Potrafi zidentyfikować i wykorzystać dyskretne struktury danych do analizy i rozwiązywania problemów
Weryfikacja: Kolokwium Egzamin
Powiązane efekty kierunkowe:
K_U04
Powiązane efekty obszarowe:
T1A_U09