Nazwa przedmiotu:
Algorytmy i struktury danych 1
Koordynator przedmiotu:
Dr inż. Paweł Kotowski
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia I stopnia
Program:
Informatyka i Systemy Informacyjne
Grupa przedmiotów:
Wspólne
Kod przedmiotu:
1120-IN000-ISP-0231
Semestr nominalny:
3 / rok ak. 2022/2023
Liczba punktów ECTS:
5
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. godziny kontaktowe – 68 h w tym a) obecność na wykładach – 30 h b) obecność na ćwiczeniach – 30 h c) konsultacje – 5 h d) obecność na egzaminie – 3 h 2. praca własna studenta – 60 godz., w tym a) przygotowanie się do ćwiczeń – 15 h b) przygotowanie się do kolokwiów – 30 h c) przygotowanie się do egzaminu – 15 h Razem 128 h, co odpowiada 5 pkt. ECTS
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1. obecność na wykładach – 30 godz. 2. obecność na ćwiczeniach – 30 godz. 3. konsultacje – 5 godz. 4. obecność na egzaminie – 3 h Razem 68 h, co odpowiada 3 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:
Programowanie 1 – strukturalne
Limit liczby studentów:
Ćwiczenia – 30 os. /grupa
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:
Wprowadzenie. Podstawowe struktury danych. Poprawność, złożoność i metody projektowania algorytmów. Kolejki priorytetowe. Kopiec i dwukopiec, Kopce złączalne. Kolejki dwumianowe, Kopce Fibonacciego. Słowniki. Wyszukiwanie w tablicach. Drzewa wyszukiwań BST, AVL, drzewa czerwono-czarne, optymalne, samoorganizujące się. B drzewa, 2-3 i 2-3-4 drzewa. Wyszukiwanie pozycyjne, Kodowanie mieszające. Algorytmy UNION-FIND. Reprezentacja listowa. Reprezentacja drzewiasta. Sortowanie. Sortowanie wewnętrzne przez porównania. Sortowanie pozycyjne. Sortowanie przez zliczanie. Sortowanie zewnętrzne. Zadanie wyboru.
Metody oceny:
Na ocenę końcową wpływają: 2 kolokwia semestralne (2x20 pkt), egzamin końcowy (40 pkt) i egzamin ustny. Warunkiem koniecznym dopuszczenia do egzaminu pisemnego jest uzyskanie min 10 pkt. z każdego kolokwium. Warunkiem koniecznym dopuszczenia do egzaminu ustnego jest uzyskanie min. 20 pkt. z egzaminu pisemnego. Istnieje możliwość zwolnienia z egzaminu pisemnego w przypadku uzyskania z ćwiczeń 35 pkt.
Egzamin:
tak
Literatura:
1. A.V. Aho, J.E. Hopcroft, J.D.Ullman, Projektowanie i analiza algorytmów komputerowych, PWN, 1983. 2. L. Banachowski, K. Diks, W. Rytter, Algorytmy i struktury danych, WNT, 1997 3. R. Sedgevick, Algotytmy w C++, Wydawnictwo RM, 1999
Witryna www przedmiotu:
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka W01
Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną i szczegółową w zakresie podstawowych struktur danych oraz algorytmów
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_W08, K_W04
Powiązane charakterystyki obszarowe:
Charakterystyka W02
Zna podstawowe metody, techniki i narzędzia stosowane do analizy złożoności obliczeniowej algorytmów
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_W10
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - umiejętności

Charakterystyka U01
Ma umiejętność formułowania algorytmów i ich programowania z użyciem przynajmniej jednego z popularnych narzędzi
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_U11, K_U23
Powiązane charakterystyki obszarowe:
Charakterystyka U02
Potrafi ocenić złożoność obliczeniową algorytmów
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_U14
Powiązane charakterystyki obszarowe:
Charakterystyka U03
Potrafi zidentyfikować i wykorzystać dyskretne struktury danych do analizy i rozwiązywania problemów
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_U04
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka K01
Rozumie znaczenie wiedzy matematycznej w opisie procesów, tworzeniu modeli, zapisie algorytmów i innych działaniach w obszarze informatyki oraz potrzebę zasięgania opinii ekspertów
Weryfikacja: ocena z kolokwiów, ocena z egzaminu
Powiązane charakterystyki kierunkowe: K_K02
Powiązane charakterystyki obszarowe: