Sorteringsalgoritme

Fra Wikipedia, den frie encyklopædi
Gå til: navigation, søg

Sorteringsproblemet handler om at permutere (omordne) elementerne i en given liste med n elementer <x1,x2, ... , xn> til listen <x1’,x2’, .. , xn’> således, at x1' ≤ x2’ ≤ ... ≤ xn’. Elementerne i listen er typisk tal fra mængden af de naturlige tal, men generelt kan elementerne i listen være alle mulige objekter så længe disse objekter kan sammenlignes med hinanden og opstilles i en kronologisk rækkefølge. Sortering er det mest kendte problem inden for Algoritmik og er et fundamental operation inden for datalogi området, hvor det bruges i mange programmerings projekter. Der er igennem tiden udviklet mange sorteringsalgoritmer, hvor de både afviger i deres beregningskompleksitet og den fremgangsmåde de anvender til løsningen af problemet.

Sorteringsalgoritmerne kan opdeles i forskellige grupper. De mest kendte algoritmer er dem som hører under gruppen sammenlignings sortering (eller sammenligningsbaseret sortering). ”Nedre grænsen for sammenlignings sortering” er en overskrift for et bevis der udsiger, at enhver sammenlignings sorteringsalgoritme kræver mindst n log n (Ω(n log n)) sammenligninger i værste tilfælde. Gruppen af sammenlignings sortering består af følgende algoritmer:

Den anden gruppe består af de sorteringsalgoritmer, der har en linære beregningskompleksitet. Disse algoritmer sorter en liste uden at sammenligne elementerne med hinanden. Denne gruppe består af følgende algoritmer:

Inden for grafteori findes der også en bestemst sorteringsalgoritme, der sorter knuderne i grafen i en bestemt rækkefølge. Algoritmen kaldes for topologisksortering.

Se også[redigér | redigér wikikode]

Eksterne links[redigér | redigér wikikode]