En algoritme er en diskret , entydig sæt operationer , der skaber resultater . Du har set og behandlet algoritmer hele dit liv i subtile og åbenlyse måder, de er, hvad du bruger, når du gør aritmetik, hvad gør dine spam-filtre og søgemaskiner til at gøre deres job , og hvad du følge, når du bruger en opskrift eller observere kørsel retninger. Velorganiserede
For at være et brugbart algoritme , skal brugsanvisningen eller operationer , der skal udføres gå i en bestemt rækkefølge . Hvert trin skal være klart, således at en computer kan udføre dem i den rigtige rækkefølge . For eksempel , at alfabetisere en samling af bøger kan din første instruktion definere driften af udkig efter et navn, der skal ordnet alfabetisk . Den anden instruktion kan give processen et udgangspunkt ved at udpege hvor på hylden for at starte den alfabetiske sekvens . En efterfølgende instruktion kan så sige , hvad de skal gøre med en bog, hvis det kommer tidligere eller senere i alfabetet end en bog allerede på hylden.
Definite & Doable
ikke alene skal en algoritme specificere hændelsesforløbet og hvad hvert trin kræver det, skal algoritmen også være performable . Operationer må være beregnelige og entydige . "Umulige " operationer - såsom at dividere et tal med 0 - er ikke tilladt
Resultatorienteret
i overensstemmelse med kravene i doability og bestemthed , er en algoritme rettet mod et slutresultat , eller en udgang. Data skal resultatet af de udførte beregninger , ellers ville du ikke være i stand til at fortælle , om de kommandoer var effektive eller ej.
Finite
algoritmer er designet til at ende og ikke fortsætte i det uendelige . Mens en kommando teknisk kunne udføres til uendeligt , ville dette ikke være en levedygtig eller nyttigt algoritme. En algoritme til sidst må vide , hvornår de skal stoppe og være komplet.