Algoritam - Wikipedija

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Izvor: Wikipedija

Za istoimenu knjiaru vidi: Knjiara "Algoritam"


U matematici, raunarstvu, lingvistici i srodnim disciplinama, algoritam ili postupnik
[1]
je konaan slijed
dobro definiranih naredbi za ostvarenje zadatka, koji e za dano poetno stanje terminirati u definiranom
konanom stanju.
Koncept algoritma je potekao kao sredstvo zapisivanja postupaka za rjeavanje matematikih problema,
poput pronalaenja zajednikog djelitelja dvaju brojeva ili mnoenja dvaju brojeva. Koncept je formaliziran
1936. u vidu Turingovog stroja Alana Turinga i lambda rauna Alonza Churcha, koji su jedan za drugim
postavili temelje raunarstva.
1 Kuhanje aja kao primjer algoritma
2 Kratka povijest
3 Svojstva
4 Algoritmi u raunarstvu
5 Analiza sloenosti algoritama
6 Klasifikacija algoritama
7 Algoritmi s obzirom na metodologiju dizajna
8 Vidi jo
9 Izvori
Najei primjer algoritma iz svakodnevnog ivota jest kuhanje aja. Svaki korak pripremanja aja mora biti
ispravno izvren kako bi mogli prijei na idui te u konanici dobiti topao i ukusan aj. Ovaj se primjer moe
nai u veini poetnike literature kao lako shvatljiv primjer osnovnih svojstava algoritama.
I to je to! Dobili smo alicu vrueg aja pa emo lake podnijeti prehladu koja nas danima mui. Iz ovog se
jednostavnog primjera jasno vidi slijednost i konanost algoritma. Naime, nema previe koristi od algoritma
koji nikad ne zavrava. Oito je da algoritam definira nain kako se neki problem rjeava.
Rije "algoritam" dolazi od latinskog prijevoda imena iranskog matematiara AlHvarizmija koji se bavio
trigonometrijom, astronomijom, zemljopisom, kartografijom, a smatra se ocem algebre jer je definirao
osnovna pravila rjeavanja linearnih i kvadratnih jednadbi. Njegovi radovi su osnova razvoja mnogih
matematikih i prirodnih disciplina, meu njima i raunarstva..
Prvi zapis algoritma prilagoen raunalu pripada Adi Byron iz 1842 (pa se zbog ovoga smatra prvom
programerkom), a raunao je Bernoullijeve brojeve. Raunalo za koje je napisan je bio analitiki stroj, koji je
zamislio, ali nikad u potpunosti proveo u djelo, Englez Charles Babbage. Analitiki stroj je trebalo biti prvo
programabilno raunalo, sastavljeno u potpunosti od mehanikih dijelova. Mehaniki dijelovi i fizika
Algoritam - Wikipedija http://hr.wikipedia.org/wiki/Algoritam
1 od 4 18.8.2014. 12:55
glomaznost su glavni razlozi zato nikad nije zavren.
Nedostatak vrste matematike forme pravio je odreene probleme matematiarima i logiarima 19. i 20.
stoljea prilikom analiziranja algoritama. Definicija Turingovog stroja je rijeila veinu tih problema, a
predstavio ju je engleski matematiar Alan Turing. Turingov stroj omoguava izvoenje veine dananjih
algoritama (uz odreene prilagodbe), a dodatno olakava i analizu sloenosti zbog svoje jednostavnosti
izvedbe (glava, funkcija pomaka glave te beskonana ili jako duga traka za itanje/pisanje).
Primjenom Turingovog stroja kao idealnog modela definirani su mnogi moderni problemi vezani uz analizu
algoritama, kao npr. Turingov problem zaustavljanja ili klase NP-tekih i NP-potpunih problema.

Ovaj dio lanka je nedovren ili treba nadopune. Pomozite Wikipediji i dopunite ga. (https://hr.wikipedia.org
/w/index.php?title=Algoritam&action=edit)
Algoritmi imaju slijedea svojstva:
diskretnost u odvojenim koracima izvode se diskretne operacije algoritma koje vode ka konanom
cilju;
konanost oznaava sposobnost algoritma da nakon konanog broja koraka daje izlazne podatke
odnosno rezultate;
determiniranost za iste ulazne podatke algoritam uvijek daje iste rezultate
masovnost algoritam je primjenjiv na vei broj ulaznih vrijednosti.
Moderno raunarstvo je nezamislivo bez primjene algoritama, njihove matematike analize te postupcima
ubrzavanja njihova izvoenja (optimiranje, optimiziranje). Sva su ta podruja povezana i meusobno se
nadopunjuju.

Ovaj dio lanka je nedovren ili treba nadopune. Pomozite Wikipediji i dopunite ga. (https://hr.wikipedia.org
/w/index.php?title=Algoritam&action=edit)
Analiza sloenosti algoritama vrlo je vana disciplina zboga toga to omoguuje vrlo dobro predvianje
resursi potrebnih da dani algoritam obradi dani set unosa. Uobiajeno je sloenost algoritama izraavati kao
matematiku funkciju koja veliinu unosa pretvara u koliinu vremena potrebnu da se algoritam zavri
(vremenska sloenost) ili koliinu prostora potrebnu da se algoritam zavri (memorijska sloenost). Vrlo
esto se analiza sloenosti algoritama provodi iskljuivo uz pomo papira i olovke bez osvrtanja na
pojedinane implementacije u pojedinim programskim jezicima.

Ovaj dio lanka je nedovren ili treba nadopune. Pomozite Wikipediji i dopunite ga. (https://hr.wikipedia.org
/w/index.php?title=Algoritam&action=edit)
Algoritme je mogue klasificirati po raznim kriterijima:
Algoritam - Wikipedija http://hr.wikipedia.org/wiki/Algoritam
2 od 4 18.8.2014. 12:55
Klasifikacija prema implementaciji Jedan nain klasifikacije algoritama je prema nainu implementacije.
Rekurzivni ili iterativni: Rekurzivni algoritam je algoritam koji poziva samog sebe sve dok se ne
postigne odreen uvjet. Rekurzivni algoritmi su vrlo esto usko vezani uz implementaciju pojedine
matematike funkcije na primjer Fibbonaijeve funkcije. Iterativni algoritmi su algoritmi koji ne
pozivaju samog sebe ve se oslanjaju na konstrukte poput petlji i dodatne strukture podataka kao to je
stog ili red da bi rijeili problem. Vano je napomenuti da je svaki rekurzivni algoritam mogue
pretvoriti u iterativni, i da je svaki iterativni algoritam mogue pretvoriti u rekurzivni, iako ponekad
pretvaranje moe biti vrlo kompleksno.
Serijski ili paralelni: Veina dananjih raunala sadri samo jedan procesor te stoga obavlja naredbe
jednu po jednu, to jest serijski. Algoritmi koji su dizajnirani sa namjerom da se izvravaju u takvom
okruenju shodno tome se nazivaju serijski algoritmi. Suprotno njima su paralelni algoritmi koji sa sve
veim probojem vieprocesorskih raunala dobivaju sve veu vanost. Paralelni algoritmi koriste
mogunost vieprocesorskog sustava na taj nain da problem rascijepe na vie malih potproblema koje
svaki procesor rjeava zasebno te se zatim rezultati spajaju. Paralelni algoritmi uz resurse potrebne za
obradu podataka takoer imaju i malu potronju resursa na komunkaciju izmeu vie procesora.
Algoritmi za sortiranje su jedan od primjera algoritama koje je mogue znatno poboljati upotrebom
paralelnih procesora, dok je probleme poput problem tri tijela sasvim nemogue rijeiti paralelnim
algoritmom.
Deterministiki ili stohastiki: Deterministiki algoritam je algoritam koji e pri svakom izvravanju
u bilo kojim uvjetima od istog unosa doi do istog izlaza sljedei svaki put identian niz naredbi.
Stohashiki algoritmi je algoritam koji barem u jednom dijelu izvravanja donese neku odluku
sluajnim odabirom.
Toan ili priblian: Iako algoritmi u principu daju toan rezultat, ponekad algoritam trai priblino
rjeenje koje je dovoljno blizu tonom, ili je tono rjeenje nemogue nai.
Brute force algoritmi - "istom silom" raunala isprobavaju sve mogunosti i trae odgovarajue rjeenje.
Najneefikasnijji algoritmi.
Podijeli i vladaj algoritmi tzv. Divide and conquer, podijeli i vladaj. Problem se dijeli na vie istih, manjih
problema. Podjela tee tako dugo dok se ne doe do malog problema kojeg je jednostavno rijeiti (obino
rekurzijom).
Dinamiki algoritmi - Metodama dinamikog programiranja rjeavaju se viefazni procesi, tj. procesi u
kojima se donosi niz meusobno ovisnih odluka za pojedine godine odreenog razdoblja ili za pojedine
aktivnosti zadanog problema. Dinamiko programiranje poznato je i pod nazivom metoda donoenja
viefaznih, odnosno viestupnjevanih odluka.
Pohlepni algoritmi tzv. greedy - Pohlepni algoritam je algoritam koji koristi metaheuristiku za rjeavanje
problema, takvu da u svakom koraku bira lokalno najbolje rjeenje, u nadi da e tako iznai globalni
optimum. Ovi algoritmi esto ne daju najbolje rjeenje ve brzu aproksimaciju najboljeg rjeenja.
Algoritmi za sortiranje i pobrojavanje tzv. search and enumeration - Algoritmi sortiranja slue za brzo
sortiranje podataka, npr. niza brojeva. Mnogi se problemi mogu rjeavati teorijom grafova.
Dijagram tijeka
Algoritam - Wikipedija http://hr.wikipedia.org/wiki/Algoritam
3 od 4 18.8.2014. 12:55
Ki Miroslav, Englesko-hrvatski i hrvatsko-engleski informatiki rjenik, Zagreb, Naklada Ljevak, 2000., str.
36
1.
Nedovreni lanak Algoritam koji govori o matematici treba dopuniti. Dopunite ga
(https://hr.wikipedia.org/w/index.php?title=Algoritam&action=edit) prema pravilima Wikipedije.
Nedovreni lanak Algoritam koji govori o raunarstvu treba dopuniti. Dopunite ga
(https://hr.wikipedia.org/w/index.php?title=Algoritam&action=edit) prema pravilima Wikipedije.
Dobavljeno iz "http://hr.wikipedia.org/w/index.php?title=Algoritam&oldid=4102247"
Kategorije: U izradi, Matematika U izradi, Raunarstvo Matematika Teoretsko raunarstvo
Vrijeme i datum posljednje promjene na ovoj stranici: 14:51, 9. lipnja 2013.
Tekst je dostupan pod licencijom Creative Commons Imenovanje/Dijeli pod istim uvjetima; dodatni
uvjeti se mogu primjenjivati. Pogledajte Uvjete koritenja za detalje.
Algoritam - Wikipedija http://hr.wikipedia.org/wiki/Algoritam
4 od 4 18.8.2014. 12:55

You might also like