Liste von Algorithmen
# Liste von Algorithmen

Dies ist eine Liste von Artikeln zu Algorithmen in der deutschsprachigen Wikipedia. Siehe auch unter Datenstruktur für eine Liste von Datenstrukturen.

## Klassen von Algorithmen nach Komplexität

* Platzkomplexität
** Linear platzbeschränkter Algorithmus
** Logarithmisch platzbeschränkter Algorithmus
** Polynomial platzbeschränkter Algorithmus
** Exponentiell platzbeschränkter Algorithmus
* Zeitkomplexität
** Linear zeitbeschränkter Algorithmus
** Logarithmisch zeitbeschränkter Algorithmus
** Polynomial zeitbeschränkter Algorithmus
** Exponentiell zeitbeschränkter Algorithmus

## Klassen von Algorithmen nach Maschinenfähigkeiten

* Deterministischer Algorithmus
* Nicht-deterministischer Algorithmus
* Quantenmechanischer Algorithmus
* Randomisierter Algorithmus
** Las-Vegas-Algorithmus
** Monte-Carlo-Algorithmus
** Latin-Hypercube-Algorithmus

## Klassen von Algorithmen nach Problemstellung

* Entscheidungsalgorithmus
* Optimierungsalgorithmus

## Klassen von Algorithmen nach Verfahren

* Approximationsalgorithmus
* Backtracking
* Dynamischer Algorithmus
* Evolutionärer Algorithmus
* Greedy-Algorithmus
* Probabilistischer Algorithmus
* Teile-und-herrsche-Verfahren

## Geometrie und Grafik

* Rasterung
* Rasterung von Linien
* Rasterung von Polygonen
* Rasterung von Kreisen
* Bresenham-Algorithmus
* De-Casteljau-Algorithmus
* Floodfill
* Marching Cubes
* Parabolic Blending
* Delaunay-Triangulierung
* Voronoi-Diagramm
* Algorithmen zur Berechnung der konvexen Hülle
** QuickHull
** Graham Scan
** Gift-Wrapping-Algorithmus (Jarvis March)
** Chans Algorithmus

## Graphentheorie

* Algorithmen für kürzester Pfad
** A*-Algorithmus
** Bellman-Ford-Algorithmus
** Dijkstra-Algorithmus
** Min-Plus-Matrixmultiplikations-Algorithmus
** Algorithmus von Floyd und Warshall
** Kürzeste-Wege-Algorithmen mit externem Speicher
* Spannbaum-Algorithmen (MST, minimal spanning tree)
** Algorithmus von Kruskal
** Algorithmus von Prim
** Algorithmus von Borůvka
** Algorithmus von Tarjan zur Bestimmung eines minimalen Spannbaumes
* Algorithmen zur Berechnung maximaler Flüsse in Netzwerken
** Algorithmus von Ford und Fulkerson
** Algorithmus von Edmonds und Karp
** Algorithmus von Dinic
** Goldberg-Tarjan-Algorithmus
* Algorithmen für das Steinerbaumproblem
** KMB-Algorithmus
** Algorithmus von Mehlhorn
** Ameisenalgorithmen
** Relativer Greedy-Algorithmus
** Loss-Kontraktions-Algorithmus
* Suchen in Graphen:
** Breitensuche
** Tiefensuche, Iterative Tiefensuche
* Algorithmen für das Problem des Handlungsreisenden
** Christofides-Heuristik
** MST-Heuristik
** Nächster-Nachbar-Heuristik
** FARIN, NEARIN und RANDIN
** Sukzessive Einbeziehung

## Kalenderrechnung

* Gaußsche Osterformel
* Spencers Osterformel
* Schaltjahr
* Zellers Kongruenz

## Bioinformatik

* BLAST-Algorithmus
* Center-Star-Algorithmus
* FASTA-Algorithmus
* Fitch-Algorithmus
* Needleman-Wunsch-Algorithmus
* Smith-Waterman-Algorithmus
* UPGMA

## Kompression

* Audiodatenkompression
* Entropiekodierung
** Arithmetisches Kodieren
** Shannon-Fano-Kodierung
** Huffman-Kodierung
** Tunstall-Kodierung
* Lauflängenkodierung
* LZ77
* Lempel-Ziv-Welch-Algorithmus (LZW)
* Deflate
* Sequitur
* Wavelet-Transformation

## Klassifikation

* Abstandsklassifikator
* Bayes-Klassifikator
* Clusterverfahren
* Entscheidungsbaum
* Fuzzy-Klassifikator
* Künstliches neuronales Netz
* Mahalanobis-Distanz-Klassifikator
* Multi-Layer Perzeptron
* Nächste-Nachbarn-Klassifikation
* Perzeptron
* Polynomklassifikator
* Quader-Klassifikator
* Radial-Basis-Funktionen
* Support-Vector-Maschinen

## Clusteranalyse

* DBSCAN – Density-Based Spatial Clustering of Applications with Noise
* EM-Algorithmus
* K-Means-Algorithmus
* OPTICS – Ordering Points To Identify the Clustering Structure

## Kryptographie

* Symmetrische Verschlüsselungsalgorithmen (Secret Key Kryptologiesysteme)
** monoalphabetische Substitution
*** Verschiebechiffre
*** Atbash
*** Homophone Verschlüsselung
*** Polybios-Chiffre
*** Blockchiffren
**** Advanced Encryption Standard (AES, Rijndael)
**** Anubis
**** Blowfish
**** CAST
**** DES/3DES
**** IDEA
**** Magenta
**** MARS
**** MISTY1
**** Serpent
**** Skipjack
**** Twofish
*** Stromchiffren
**** A5/1, A5/2, A5/3 und A5/4
**** HC-256
**** Rabbit
**** RC4 – Ron's Code 4 (WEP Wired Equivalent Privacy für WLAN)
**** Salsa20
**** SEAL
**** SOSEMANUK
**** Trivium
** Polyalphabetische Substitution
*** Vigenère-Chiffre
*** One-Time-Pad
*** Enigma
** Transposition
* Asymmetrische Verschlüsselungsalgorithmen (Public Key Kryptologiesysteme)
** RSA
** Diffie-Hellman-Algorithmus
** Elgamal-Verschlüsselungsverfahren
** Rabin-Kryptosystem
** GMR
** Elliptic Curve Cryptography
* Hybridverfahren
* Spezielle Verschlüsselungsalgorithmen (Anwendungen)
** CSS – Content Scramble System (DVD)
** CSA – Common-Scrambling-Algorithmus (DVB für PayTV)

## Prüfsummenverfahren

* Adler-32
* Hamming-Code
* ZRP oder CRC – Zyklische Redundanzprüfung oder Cyclic Redundancy Check

## Numerik

* Siehe die Liste numerischer Verfahren.

## Sortieralgorithmen

* Binary Tree Sort
* Bogosort
* Bubblesort
* Bucketsort
* Combsort
* Countingsort
* Gnomesort
* Heapsort
* Hybridsort
* Insertionsort
* Introsort: Verbesserter Quicksort-Algorithmus, der auch im Worst Case eine Laufzeit von $O(n\log n)$ hat.
* Merge Insertion
* Mergesort
* Quicksort
* Radixsort
* Selectionsort
* Shakersort
* Shellsort
* Simplesort
* Slowsort
* Smoothsort
* Stoogesort
* Swap-Sort
* Timsort

## Suchalgorithmen

* für Listen / Arrays
** Lineare Suche
** Binäre Suche
** Interpolationssuche
* für Graphen / Bäume
** Breitensuche
** Tiefensuche
*** Iterative Tiefensuche
** A*-Suche
* für Text
** Boyer-Moore-Algorithmus
** Boyer-Moore-Horspool-Algorithmus
** Knuth-Morris-Pratt-Algorithmus
** Aho-Corasick-Algorithmus
** PATRICIA-Trie
** Rabin-Karp-Algorithmus
** Suffixbaum
** Sunday-Algorithmus
** Skip-Search-Algorithmus
** Shift-And-Algorithmus
* für Funktionsoptima (siehe dort)
* andere
** Lazy Select – stochastischer Algorithmus
** Intervallsuche, auch Interpolarsuche genannt, zur Suche durch Abschätzung der Position des gesuchten Elements

## Zahlentheoretische Algorithmen

* Euklidischer Algorithmus: Ermittlung des größten gemeinsamen Teilers (ggT) zweier natürlicher Zahlen A und B
* Sieb des Eratosthenes: Bestimmung aller Primzahlen kleiner oder gleich einer vorgegebenen Zahl
* CORDIC Algorithmus zur Berechnung elementarer trigonometrischer und hyperbolischen Funktionen
* Steinhaus-Johnson-Trotter-Algorithmus: Algorithmus zur Erzeugung aller möglichen Permutationen von $n$ Objekten, mittels Vertauschung von Elementen
* Heap-Algorithmus: Algorithmus zur Erzeugung aller möglichen Permutationen von $n$ Objekten, mittels optimierter Vertauschung von Elementen

## Lineare Algebra

* Gaußsches Eliminationsverfahren: Lösung eines linearen Gleichungssystems
* Gauß-Jordan-Algorithmus: Lösung eines linearen Gleichungssystems

## Computeralgebra

* Berlekamp-Algorithmus: Faktorisierung von Polynomen über endlichen Körpern

## Taktik- und Strategiespiele

* Minimax-Algorithmus
* Alpha-Beta-Suche
* Proof-Number-Suche

## Sonstige Algorithmen

* Binäre Exponentiation
* Extraktionsalgorithmus nach Luhn
* Zassenhaus-Algorithmus, Lineare Algebra
* Epidemischer Algorithmus
* Local Outlier Factor (Data-Mining – Ausreißererkennung)
* Quickselect
* Ungarische Methode