Abstrakcyjne struktury danych (wykład) - 2019/2020

Opis zajęć
Informacje ogólne
Prowadzący:dr Henryk Malinowski
Organizator:Wydział Nauk Ścisłych i Nauk o Zdrowiu - Instytut Matematyki, Informatyki i Architektury Krajobrazu
Liczba godzin tydzień/semestr: 2/30
Język wykładowy:Język polski
Cele przedmiotu
C1. Zapoznanie studentów z podstawowymi strukturami danych, operacjami na tych strukturach oraz ich zastosowaniami.
C2. Podnoszenie umiejętności z programowania.
Wymagania wstępne
Znajomość programowania obiektowego.Umiejętność programowania.
Przedmioty wprowadzające: Wstęp do informatyki, Podstawy algorytmiki i programowania, Programowanie obiektowe.
Efekty kształcenia dla przedmiotu
WIEDZA
Student potrafi
W1 rozpoznać podstawowe struktury danych i wskazać różnice między poznanymi strukturami danych K_W01, K_W03, K_W06
UMIEJĘTNOŚCI
Student potrafi
U1. dokonać wyboru odpowiedniej struktury danych do określonego problemu K_U06, K_U10
U2 . zaimplementować wybraną strukturę danych, dostosować strukturę do potrzeb realizowanego zagadnienia K_U08, K_U10, K_U11
U3. tworzyć proste aplikacje z zastosowaniem poznanych struktur danych K_U10, K_U11, K_U12
KOMPETENCJE SPOŁECZNE (POSTAWY)
Student potrafi
K1. znaleźć rozwiązanie zadanego problemu opierając się na poznanych strukturach danych i wykorzystując zasoby informatyczne K_K01, K_K03, K_K04
Metody dydaktyczne
wykład konwencjonalny, praktyczne implementacje aplikacji w pracowni komputerowej i w zadaniach domowych, korzystanie z rzutnika multimedialnego
Treści programowe przedmiotu
Pliki o dostępie bezpośrednim.
Szablony funkcji i klas.
Stos i odwrotna notacja polska
Kolejka liniowa i przykłady jej zastosowania.
Listy jedno i dwukierunkowe, posortowane.
Biblioteka STL.
Drzewa, binarne drzewa poszukiwań (BST).
Operacje na drzewach. Wyważanie drzew. Zastosowanie drzew.
Kopce - kolejki priorytetowe, sortowanie przez kopcowanie.
Tablice z haszowaniem i wyszukiwanie informacji.
Wskaźniki funkcji.
Kryteria oceny i sposoby weryfikacji zakładanych efektów kształcenia
Zaliczenie ćwiczeń – weryfikacja za pomocą pisemnych sprawdzianów (20% oceny końcowej), aktywności i odpowiedzi ustnych na laboratoriach (10% oceny końcowej), prac domowych obejmujących poszczególne tematyki struktur danych (20% oceny końcowej) oraz kolokwium (50% oceny końcowej).

Egzamin pisemny (dla osób, które zaliczyły ćwiczenia) z wiedzy przekazanej na wykładzie.

Skala ocen:
od 90% do 100% ocena bardzo dobry (5.0)
od 80% do 90% ocena dobry plus (4.5)
od 70% do 80% ocena dobry (4.0)
od 60% do 70% ocena dostateczny plus (3.5)
od 50% do 60% ocena dostateczny (3.0)
poniżej 50% niedostateczny (2.0)
Szczegółowe zasady oceniania są podawane studentom z każdą edycją przedmiotu.

Weryfikacja efektów kształcenia
W1, U1, U2, U3 – egzamin, kolokwium, krótki sprawdzian, praca domowa, przygotowanie do zajęć
K1– praca i aktywność na zajęciach
Literatura podstawowa i uzupełniająca
LITERATURA PODSTAWOWA:
1. L. Banachowski, K. Diks, W. Rytter, Algorytmy i struktury danych, wyd. III, WNT, Warszawa 2001
2. A. Drozdek, C++. Algorytmy i struktury danych, Helion, Gliwice 2004
3. T. H. Cormen, Ch. E. Leiserson, R. L. Rivest, Wprowadzenie do algorytmów, WNT, Warszawa 1997

LITERATURA UZUPEŁNIAJĄCA:
1. A. Drozdek, D. L. Simon, Struktury danych w języku C, WNT, Warszawa 1996
2. B. Eckel, Thinking in C++, Helion, Gliwice 2002
3. Zasoby internetowe
Kierunek studiów: Informatyka (stacjonarne I stopnia)
Lokalizacja w planach rocznych:
Etap:Rok II - Semestr 4
Punkty ECTS: 5
Forma zaliczenia: Egzamin
Kierunek studiów: Matematyka (stacjonarne I stopnia)
Lokalizacja w planach rocznych:
Etap:Rok I - Semestr 2
Punkty ECTS: 5
Forma zaliczenia: Egzamin
Etap:Rok II - Semestr 4
Punkty ECTS: 5
Forma zaliczenia: Egzamin
Etap:Rok II - Semestr 4
Punkty ECTS: 5
Forma zaliczenia: Zal. podpisem