Algorytmy
i struktury danych

Materiały do przedmiotu algorytmy i struktury danych. Obejmuje złożoność obliczeniową, klasyczne algorytmy sortowania i przeszukiwania, struktury danych, grafy i programowanie dynamiczne.

Zakres tematyczny

Temat 01

Złożoność obliczeniowa

Notacja O, Ω, Θ; analiza najgorszego i średniego przypadku.

Temat 02

Tablice i listy

Tablice statyczne, dynamiczne, listy jedno- i dwukierunkowe.

Temat 03

Stosy, kolejki, kopce

Implementacja i zastosowania, kolejka priorytetowa.

Temat 04

Drzewa

BST, AVL, drzewa czerwono-czarne, B-drzewa, drzewa trie.

Temat 05

Algorytmy sortowania

QuickSort, MergeSort, HeapSort, RadixSort – analiza i implementacja.

Temat 06

Algorytmy grafowe

BFS, DFS, Dijkstra, Bellman-Ford, Floyd-Warshall, Kruskal, Prim.

Temat 07

Programowanie dynamiczne

Zasada optymalności, memoizacja, klasyczne problemy DP.

Temat 08

Algorytmy zachłanne

Kodowanie Huffmana, algorytmy szeregowania, problem plecakowy.