Różne rodzaje algorytmów są używane w informatyce, matematyce, sztucznej inteligencji i innych dziedzinach. Oto kilka głównych kategorii algorytmów.
Algorytmy sortowania
Sortowanie bąbelkowe porównuje i zamienia miejscami sąsiednie elementy, aż do posortowania całej listy.
Sortowanie przez wstawianie. Elementy są wstawiane na właściwe miejsce w posortowanej części listy.
Sortowanie przez scalanie. Dzieli listę na dwie części, sortuje je, a następnie scalane są z powrotem w posortowaną listę.
Algorytmy przeszukiwania.
Przeszukiwanie binarne. Efektywne przeszukiwanie posortowanej listy poprzez dzielenie jej na połowę.
Przeszukiwanie liniowe. Iteracyjne sprawdzanie każdego elementu w celu znalezienia poszukiwanej wartości.
Algorytmy grafowe.
Przeszukiwanie wszerz (BFS). Przechodzi przez wierzchołki grafu poziomo, na każdym poziomie przeszukując wszystkie wierzchołki.
Przeszukiwanie w głąb (DFS). Przechodzi przez wierzchołki grafu pionowo, do maksymalnej głębokości, zanim wróci do wcześniejszego wierzchołka.
Algorytmy dynamiczne.
Algorytm Dijkstry. Znajduje najkrótszą ścieżkę między dwoma wierzchołkami w grafie z wagami krawędzi.
Algorytm programowania dynamicznego. Rozwiązuje problemy, dzieląc je na mniejsze i rozwiązując je iteracyjnie.
Algorytmy drzewiaste.
Drzewa decyzyjne. Służą do podejmowania decyzji poprzez hierarchiczne rozgałęzianie.
Algorytm przeszukiwania drzewa (DFS dla drzew): Przechodzi przez węzły drzewa, odwiedzając każdy wierzchołek przed przechodzeniem do następnego poziomu.
Algorytmy sztucznej inteligencji.
Algorytmy genetyczne. Inspirujące się procesami ewolucji do rozwiązywania problemów optymalizacyjnych.
Algorytmy uczenia maszynowego. Takie jak algorytmy klastrowania, klasyfikacji, regresji itp.
Algorytmy kryptograficzne.
Algorytm RSA. Algorytm kryptograficzny używany do szyfrowania i deszyfrowania danych.
Algorytmy haszujące. Przetwarzają dane wejściowe na stałej długości skrót, używane m.in. do weryfikacji integralności danych.
Algorytmy kompresji.
Algorytmy stratne (np. JPEG dla obrazów): Redukują ilość danych kosztem niektórych szczegółów.
Algorytmy bezstratne (np. ZIP): Kompresują dane bez utraty informacji.
Algorytmy symulacyjne.
Algorytmy Monte Carlo używane do szacowania wartości przez generowanie losowych próbek.
Algorytmy symulacji dyskretnej modelują zdarzenia w czasie, takie jak systemy kolejek czy procesy produkcji.
To tylko wybrane rodzaje algorytmów. Wybór odpowiedniego algorytmu zależy od rodzaju problemu, z którym się mierzymy, oraz wymagań dotyczących efektywności, złożoności czasowej i pamięciowej.
Powyżej znajdują się podstawowe informacje opisujące rodzaje algorytmów i pozwalające zdobyć podstawowy zakres informacji na ten temat. Po bardziej naukową, szczegółową wiedzę zapraszamy na strony specjalistyczne. Pamiętaj, że wszystkie informacje powinno się weryfikować w różnych miejscach
