En
algoritm är inom
matematiken och
datavetenskapen en begränsad uppsättning (
mängd) väldefinierade
instruktioner för att lösa en uppgift, som från givna utgångstillstånd (starttillstånd) med säkerhet leder till något givet sluttillstånd. Den kan också beskrivas som en systematisk
procedur för hur man genom ett begränsat antal steg utför en beräkning eller löser ett problem.
Beräkningskomplexiteten och hur effektiv
implementation man kan göra av algoritmen är viktigt i databeräkningar och beror på användningen av lämpliga
datastrukturer.