Moduł Algorytmy i Struktury Danych umożliwia zagłębienie się w świat programowania poprzez naukę kluczowych algorytmów oraz struktur danych. Uczestnicy poznają zaawansowane techniki projektowania algorytmów oraz optymalizacji ich działania. Moduł zawiera opis praktycznych ćwiczeń, dzięki czemu uczestnicy zdobywają umiejętność wybierania odpowiednich struktur danych do konkretnych zadań do implementacji efektywnych algorytmów. Moduł ten pozwala uczestnikom na lepsze zrozumienie sposobu działania oprogramowania oraz umożliwia rozwój umiejętności potrzebnych do rozwiązywania zaawansowanych problemów informatycznych.

1. Wprowadzenie

W ramach modułu zostaną omówione podstawowe zagadnienia związane ze strukturami danych oraz ich wykorzystaniem do tworzenia algorytmów. Omówione zostaną zasady zapisu pseudokodu, który ma na celu przedstawienie ogólnej struktury algorytmu i operacji, które mają być wykonane, nie skupiając się na szczegółach składniowych danego języka programowania. Zostanie omówiony sposób tworzenia struktur takich jak stosy, kolejki wraz z omówieniem podstawowych operacji. Omawiany ...

2. Algorytmy przeszukiwania i sortowania

W ramach modułu zostanie omówione zagadnienie związane ze złożonością obliczeniową algorytmów oraz przegląd algorytmów do przeszukiwania uwzględniający m.in. przeszukiwanie liniowe i binarne, przeszukiwanie tekstów, problem skoczka szachowego, czy problem plecakowy. Zostanie także przedstawiony przegląd metod konstruowania algorytmów. W ramach opisu zostaną przedstawione oraz omówione elementarne algorytmu sortowania takie jak: sortowanie przez wybieranie (ang. selection s...

3. Drzewa

W ramach modułu zostaną omówione treści związane z tworzeniem drzew binarnych. Zostanie omówiona ogólna struktura drzewa binarnego wraz z podaniem podstawowych operacji jakie można wykonać jak np. wyszukiwanie elementów, dodawanie węzłów do drzewa, usuwanie wybranych węzłów oraz całego drzewa. Omówione zostaną metody poruszania się po drzewie BST tzn. poruszanie w kolejności inorder, preorder oraz postorder. Wszystkie operacje na drzewie BST zostaną zilustrowane oraz ...

4. Grafy

W ramach modułu zostaną przedstawione struktury złożone w postaci grafów, dzięki którym możemy modelować najrozmaitsze sieci połączeń, tak bardzo popularne w wielu dziedzinach codziennego życia. W ramach zawartych treści czytelnik zyska wiedzę dotyczącą trzech zasadniczych grup problemów grafowych: przeszukiwaniu grafu, wyznaczaniu najkrótszych ścieżek między wierzchołkami grafu, wyznaczaniu minimalnego drzewa rozpinającego w grafie. Omówione zostaną metody reprezentacji ...