Algoritme

En regneforskrift eller metode til løsning af matematiske eller logiske problemer i et endeligt antal beregningsskridt. Algoritme benyttes i daglig tale tillige som synonym for et program. Dette er ikke helt korrekt sprogbrug, da en algoritme er mere abstrakt og kan angives såvel uformelt som i formel matematisk notation. Et program er en konkret realisation af en eller flere algoritmer, skrevet i et programmeringssprog, som kan oversættes og køre på en computer.

Ordet algoritme er den latinske omskrivning af efternavnet på en berømt arabisk matematiker, Mohammed ibn-Musa al-Khowarizmi (780-850). Al-Khowarizmi udgav to værker - ét om aritmetik og ét om algebra. Disse værker blev grundlaget for arabernes - og senere europæernes - kendskab til algebra og det indiske talsystem (se forklaring under nulstreng).

Den tidligst beskrevne algoritme er Euklids algoritme (Euklids "Elementer" bog VII, 2, ca. 300 f.Kr.) til beregning af største fælles divisor. Inden for matematikken har interessen for udarbejdelsen af algoritmer været meget varierende, idet eksistensen af en løsning på et problem i mange sammenhænge har været vigtigere end hvordan løsningen kunne findes. Med computeren er udarbejdelse og analyse af effektive algoritmer blevet et vigtigt og centralt emne, og der findes et stort antal publicerede algoritmer med gennemanalyserede egenskaber. Ikke alle problemer kan løses med en algoritme (se beregnelighed og uafgørlighed), og nogle problemer kræver så store beregningsmæssige ressourcer, at de ikke kan løses med nutidens computere inden for en overkommelig tid (se kompleksitet).

Se også algoritmik og genetisk algoritme.

Forfattere: 
Klaus Hansen
Casper Thomsen