Uniwersytet Kazimierza Wielkiego w Bydgoszczy - Centralny System UwierzytelnianiaNie jesteś zalogowany | zaloguj się
katalog przedmiotów - pomoc

Algorytmy i struktury danych 1300-Inf2AiSD-NP
Laboratorium (LAB) Rok akademicki 2020/21

Informacje o zajęciach (wspólne dla wszystkich grup)

Liczba godzin: 16
Limit miejsc: (brak limitu)
Zaliczenie: Zaliczenie na ocenę
Rygory zaliczenia zajęć: zaliczenie na ocenę
Literatura uzupelniająca: Bjarne Stroustrup Język C++ Wydawnictwa Naukowo Techniczne 2002
Jacek Tomasiewicz Zaprzyjaźnij się z algorytmami PWN 2016

https://eduinf.waw.pl/
http://www.algorytm.org/
http://smurf.mimuw.edu.pl/node/27
http://wazniak.mimuw.edu.pl/index.php?title=Algorytmy_i_struktury_danych
http://www.algorytm.edu.pl/
https://pl.spoj.com/
https://www.codechef.com/

Metody dydaktyczne: ćwiczenia laboratoryjne
metody dyskusyjne
metody pracy ze źródłami
metody problemowe
Metody dydaktyczne - inne: Rozwiązywanie problemów algorytmicznych ze wskazówkami i pod nadzorem prowadzącego oraz samodzielnie. Analiza prezentowanych przykładów, objaśnień / code review, praca samodzielna przy implementacji.
Literatura:

Wisnu Anggoro C++ Struktury danych i algorytmy Helion 2019

Robert Sedgewick Algorytmy w C++ Wydawnictwo RM 1998

Mark Allen Weiss, Data Structures and Algorithm Analysis in C++, Pearson Education 2014.

Krzysztof Giaro Złożoność obliczeniowa algorytmów w zadaniach Olszyńska Wyższa Szkoła Informatyki i Zarządzania Gdańsk 2011

Efekty uczenia się:

Wiedza

W1 Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej

W2 Ma uporządkowaną szczegółową wiedzę w zakresie algorytmiki w tym stosowanych struktur danych i klasycznych algorytmów sortujących, kombinatorycznych, kryptograficznych, wyszukujących oraz grafowych

W3 Zna podstawowe metody, techniki i narzędzia stosowane przy rozwiązywaniu prostych zadań informatycznych z zakresu analizy złożoności obliczeniowej. Zna techniki uzasadniania poprawności algorytmów.

Umiejętności

U1 Potrafi wykorzystać nabytą wiedzę do rozwiązywania problemów algorytmicznych, formułowania algorytmów, ich opisu i implementacji.

U2Potrafi uzasadnić poprawność opracowanego algorytmu.

U3 Potrafi ocenić złożoność obliczeniową algorytmów i problemów algorytmicznych

U4 Potrafi dobierać struktury danych, samodzielnie je tworzyć i korzystać świadomie z opracowanych bibliotek, wyszukiwać sposoby optymalizacji algorytmu w celu tworzenia wydajnych i stabilnych programów.

Kompetencje społeczne

K1 Rozumie potrzebę i zna możliwości ciągłego dokształcania się,

K2 Ma świadomość ważności zachowania w sposób profesjonalny, przestrzegania zasad w pracy zespołowej i zachowania etyki zawodowej

Metody i kryteria oceniania:

rozliczenie się z zadań uzgodnionych z prowadzącym, zaliczenie kolokwium.

Zakres tematów:

1. Szacowanie złożoności obliczeniowej i uzasadnianie poprawności algorytmów.

2. Rozwiązywanie problemów algorytmicznych, dobór struktur danych i implementacja w języku programowania wybranych algorytmów:

- Algorytmy sortujące

- Algorytmy kombinatoryczne

- Algorytmy kryptograficzne

- Algorytmy wyszukujące. Haszowanie

- Algorytmy grafowe

Grupy zajęciowe

zobacz na planie zajęć

Grupa Termin(y) Prowadzący Miejsca Akcje
1 wielokrotnie, niedziela (niestandardowa częstotliwość), 10:30 - 12:45, (sala nieznana)
Marcin Kowalewski 12/ szczegóły
2 wielokrotnie, niedziela (niestandardowa częstotliwość), 13:00 - 15:15, (sala nieznana)
Marcin Kowalewski 10/ szczegóły
Wszystkie zajęcia odbywają się w budynku:
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Kazimierza Wielkiego w Bydgoszczy.