Algoritem

Algoritem je postopek za reševanje določenega problema z računalnikom. Zelo podobno smo opredelili tudi program, vendar pa med algoritmom in programom vseeno obstaja določena razlika. Program je namreč samo eden od možnih zapisov algoritma.

Kot bomo videli, lahko uporabljamo tudi zapise, ki jih ne moremo neposredno izvršiti v računalniku, kljub temu pa nam lahko pomagajo pri razumevanju ali načrtovanju algoritmov. Za algoritem torej ni nujno, da je zapisan kot program v nekem programskem jeziku. Lahko je zapisan tudi kot navodilo v naravnem jeziku. Pomembno je samo to, da so posamezni koraki algoritma natančno opredeljeni.

Pri algoritmih se sprašujemo o povsem enakih rečeh kot pri programih. Najbolj nas zanimata ustavljivost in pravilnost: torej, ali se algoritem pri vseh veljavnih vhodih za podani problem ustavi in ustvari pričakovani izhod. Z algoritmi, ki ne izpolnjujejo teh pogojev, se običajno sploh ne ukvarjamo. Pri ustavljivih in pravilnih algoritmih pa nas zanimajo tudi druge lastnosti, npr. učinkovitost.

Alternativni načini zapisa algoritma

Ker zapis algoritma s programom že dobro poznamo, si bomo v tem razdelku ogledali še nekaj drugih možnosti.

Zapis algoritma s funkcijo

Ker za sam algoritem ni pomembno, od kod dobi svoj vhod in kam se posreduje njegov izhod, ga pogosto zapišemo kot funkcijo namesto kot samostojen program. Vhodni podatki se funkciji posredujejo prek njenih parametrov, rezultat funkcije (tisto, kar funkcija vrne) pa se obravnava kot izhod.

Zapišimo naš algoritem za problem MIN3 s funkcijo:


Izvedi Počisti



Vaja

Vaja