Nazwa przedmiotu:
Algorytmy i struktury danych
Koordynator przedmiotu:
__
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia I stopnia
Program:
Geoinformatyka
Grupa przedmiotów:
Obowiązkowe
Kod przedmiotu:
1060-GI000-ISP-1006
Semestr nominalny:
1 / rok ak. 2015/2016
Liczba punktów ECTS:
2
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Udział w zajęciach, wykłady: 15 godzin, Udział w zajęciach, ćwiczenia: 15 godzin, Zapoznanie z literaturą: 6 godzin, Sprawozdania, raporty z zajęć, prace domowe: 10 godzin, Przygotowanie do kolokwium: 12 godzin, Udział w konsultacjach: 2 godziny
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1,1 punktu ECTS: Udział w zajęciach, wykłady: 15 godzin, Udział w zajęciach, ćwiczenia: 15 godzin, Udział w konsultacjach: 2 godziny
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
0,9 punktu ECTS: Udział w zajęciach, ćwiczenia: 15 godzin, Sprawozdania, raporty z zajęć, prace domowe: 10 godzin, Udział w konsultacjach: 2 godziny
Formy zajęć i ich wymiar w semestrze:
  • Wykład15h
  • Ćwiczenia15h
  • Laboratorium0h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Limit liczby studentów:
Cel przedmiotu:
Celem przedmiotu jest zapoznanie studentów z podstawowymi algorytmami scalania, sortowania i wyszukiwania stosowanymi w informatyce. W ramach przedmiotu przekazana jest wiedza o różnych technikach projektowania algorytmów (np. "dziel i zwyciężaj"), sposobach wyznaczania ich złożoności oraz ugruntowana umiejętność formułowania algorytmów w języku programowania.
Treści kształcenia:
1. Podstawowe pojęcia: sposoby opisu algorytmów, schematy blokowe, techniki tworzenia algorytmów, rekurencja, dziel i zwyciężaj 2. Analiza algorytmów: poprawność algorytmów, złożoność obliczeniowa 3. Podstawowe struktury danych 4. Algorytmy wyszukiwania i scalania 5. Elementarne metody sortowania: przez selekcję, wstawianie 6. Quick sort 7. Sortowanie przez scalanie 8. Sortowanie przez kopcowanie 9. Wyszukiwanie i drzewa binarne 10. Zrównoważone drzewa binarne 11. Tablice hashujące 12. Wyszukiwanie danych przestrzennych
Metody oceny:
Ocena z wykładu: 2 kolokwia, czas trwania około 30 minut; progi zaliczenia: 2 [0%-50%], 3 [50%-60%], 3.5 [60%-70%], 4 [70%-80%], 4.5 [80%-90%], 5 [90%-100%]; możliwość poprawienia obu kolokwiów w sesji - jeden termin poprawkowy; krótkie kartkówki z ostatniego wykładu - dodatkowe punkty na kolokwium, sumarycznie 10%; ocena końcowa: średnia z obu kolokwiów z zaokrągleniem w górę. Ocena z ćwiczeń: ćwiczenia samodzielne z analizy i implementacji algorytmów; poprawne rozwiązanie ćwiczenia: ocena 3, jakość kodu programu lub raportu: oceny 4 i 5; oddanie ćwiczenia po terminie: -0.5 oceny za każdy rozpoczęty tydzień; brak ćwiczenia: ocena 2; ocena końcowa to średnia ważona z oddanych ćwiczeń z zaokrągleniem w górę.
Egzamin:
nie
Literatura:
"Algorytmy, struktury danych i techniki programowania", Wydanie IV, Piotr Wróblewski, Helion; "Algorytmy", Robert Sedgewick, Wydanie IV, Kevin Weyne, Helion; "Wprowadzenie do algorytmów", Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Wydawnictwo Naukowe PWN
Witryna www przedmiotu:
Uwagi:

Efekty uczenia się

Profil praktyczny - wiedza

Efekt GI.ISP-1006_W01
zna podstawowe pojęcia i techniki dotyczące projektowania i analizy algorytmów stosowanych w informatyce, rozumie zasadę działania rekurencji oraz techniki „dziel i rządź”
Weryfikacja: Kolokwium
Powiązane efekty kierunkowe: K_W04
Powiązane efekty obszarowe: T1P_W03, T1P_W04, T1P_W06
Efekt GI.ISP-1006_W02
zna złożoność czasową podstawowych algorytmów sortowania i wyszukiwania z uwzględnieniem przypadków szczególnych
Weryfikacja: Kolokwium
Powiązane efekty kierunkowe: K_W04
Powiązane efekty obszarowe: T1P_W03, T1P_W04, T1P_W06
Efekt GI.ISP-1006_W03
zna podstawowe struktury danych oraz przykłady algorytmów, które je wykorzystują
Weryfikacja: Kolokwium
Powiązane efekty kierunkowe: K_W04
Powiązane efekty obszarowe: T1P_W03, T1P_W04, T1P_W06

Profil praktyczny - umiejętności

Efekt GI.ISP-1006_U01
potrafi oszacować złożoność obliczeniową prostego algorytmu
Weryfikacja: Kolokwium
Powiązane efekty kierunkowe: K_U01
Powiązane efekty obszarowe: T1P_U01, T1P_U13
Efekt GI.ISP-1006_U02
potrafi formułować algorytmy w języku programowania i dobierać odpowiednie struktury danych
Weryfikacja: Ćwiczenia - implementacja programów wykorzystujących poznane zagadnienia teoretyczne
Powiązane efekty kierunkowe: K_U01, K_U02, K_U15
Powiązane efekty obszarowe: T1P_U01, T1P_U13, T1P_U02, T1P_U12, T1P_U09, T1P_U14, T1P_U15, T1P_U16, T1P_U18
Efekt GI.ISP-1006_U03
potrafi zastosować wybrane algorytmy w zakresie sortowania i wyszukiwania do rozwiązania bardziej złożonych problemów programistycznych
Weryfikacja: Ćwiczenia - implementacja programów wykorzystujących poznane zagadnienia teoretyczne
Powiązane efekty kierunkowe: K_U01, K_U02, K_U15
Powiązane efekty obszarowe: T1P_U01, T1P_U13, T1P_U02, T1P_U12, T1P_U09, T1P_U14, T1P_U15, T1P_U16, T1P_U18

Profil praktyczny - kompetencje społeczne

Efekt GI.ISP-1006_K01
potrafi uzupełniać i doskonalić nabytą wiedzę i umiejętności z zakresu struktur danych i algorytmów operujących na tych strukturach
Weryfikacja: Kolokwium, ćwiczenia
Powiązane efekty kierunkowe: K_K01
Powiązane efekty obszarowe: T1P_K01
Efekt GI.ISP-1006_K02
potrafi przeanalizować problem, wybrać i przedyskutować odpowiednią metodę rozwiązania
Weryfikacja: Kolokwium, ćwiczenia
Powiązane efekty kierunkowe: K_K04
Powiązane efekty obszarowe: T1P_K03, T1P_K04