Algorytmy i struktury danych

Kurs na temat algorytmów i struktur danych w języku Python.

Spis lekcji

1

Wprowadzenie do algorytmów i struktur danych

Materiały
2

Złożoność obliczeniowa - notacja Big O

Materiały
3

Analiza czasu i pamięci algorytmów

Materiały
4

Listy - operacje i zastosowania

Materiały
5

Tuple - niezmienność i użycie

Materiały
6

Słowniki - tablice mieszające

Materiały
7

Zbiory - operacje na zbiorach

Materiały
8

Porównanie struktur danych

Materiały
9

Listy jednokierunkowe

Materiały
10

Listy dwukierunkowe

Materiały
11

Stos LIFO

Materiały
12

Kolejka FIFO

Materiały
13

Kolejka priorytetowa

Materiały
14

Wprowadzenie do rekurencji

Materiały
15

Rekurencja vs iteracja

Materiały
16

Stos wywołań i debugowanie rekurencji

Materiały
17

Rekurencja ogonowa

Materiały
18

Fibonacci

Materiały
19

Silnia i potęgowanie rekurencyjne

Materiały
20

Problem wież Hanoi

Materiały
21

Wprowadzenie do sortowania

Materiały
22

Sortowanie bąbelkowe

Materiały
23

Sortowanie przez wybieranie

Materiały
24

Sortowanie przez wstawianie

Materiały
25

Sortowanie przez scalanie

Materiały
26

Sortowanie szybkie

Materiały
27

Sortowanie przez kopcowanie

Materiały
28

Porównanie algorytmów sortowania

Materiały
29

Wyszukiwanie liniowe

Materiały
30

Wyszukiwanie binarne

Materiały
31

Wyszukiwanie interpolacyjne

Materiały
32

Wyszukiwanie skokowe

Materiały
33

Drzewa binarne - podstawy

Materiały
34

Drzewo binarne wyszukiwań

Materiały
35

Przechodzenie drzew

Materiały
36

Drzewa AVL

Materiały
37

Kopce binarne

Materiały
38

Podstawy przetwarzania tekstów

Materiały
39

Palindrom

Materiały
40

Anagram

Materiały
41

Wyszukiwanie wzorca

Materiały
42

Algorytm Knuth-Morris-Pratt

Materiały
43

Algorytm Rabin-Karp

Materiały
44

Algorytm Boyer-Moore

Materiały
45

Szyfr Cezara

Materiały
46

Wprowadzenie do programowania dynamicznego

Materiały
47

Memoization

Materiały
48

Tabulation (podejście tabelaryczne)

Materiały
49

Problem pakowania plecaka

Materiały
50

Plecak - metoda zachłanna

Materiały
51

Plecak - programowanie dynamiczne

Materiały
52

Najdłuższy wspólny podciąg (LCS)

Materiały
53

Najdłuższy rosnący podciąg (LIS)

Materiały
54

Podstawy teorii grafów

Materiały
55

Reprezentacje grafów

Materiały
56

Przeszukiwanie wszerz (BFS)

Materiały
57

Przeszukiwanie w głąb (DFS)

Materiały
58

Algorytm Dijkstry

Materiały
59

Minimalne drzewo rozpinające

Materiały
60

Systemy liczbowe

Materiały
61

Przeliczanie BIN -> DEC

Materiały
62

Przeliczanie DEC-> HEX

Materiały
63

Przeliczanie między dowolnymi systemami

Materiały
64

Operacje bitowe w algorytmach

Materiały
65

Liczby pierwsze

Materiały
66

Sito Eratostenesa

Materiały
67

Algorytm Euklidesa - NWD

Materiały
68

NWD i NWW - zastosowania

Materiały
69

Rozkład na czynniki pierwsze

Materiały
70

Liczby doskonałe

Materiały
71

Pierwiastkowanie - metoda Newtona

Materiały
72

Szybkie potęgowanie

Materiały
73

Wprowadzenie do strategii zachłannej

Materiały
74

Problem wydawania reszty

Materiały
75

Problem planowania zadań

Materiały
76

Kompresja Huffmana

Materiały
77

Algorytmy Divide and Conquer

Materiały
78

Backtracking - Problem N-Hetmanów

Materiały