Почетак › Форуми › Линукс › Програмирање › Brzina (broj prolaza) algoritma
- This topic has 20 одговора, 8 гласова, and was last updated 18 years, 1 months раније by burga.
-
АуторЧланци
-
29. новембар 2006. у 6:50 pm #8083BrokeBodyУчесник
Recimo da imam neki program P1 koji ima 100 linija koda. Nebitno koju funkciju program ima.
E sad, imam jedan isti takav program P2, odnosno program P2 ima potpuno istu funkciju kao i program P1, i kada korisnik koristi program P1 ili program P2, on ne vidi nikakvu razliku izmedju ta dva programa, jer mu i jedan i drugi vizuelno na potpuno isti nacin zavrsavaju posao. Taj krajnji korisnik kaze da su program P1 i program P2 potpuno isti programi i da je jedina razlika izmedju njih ta sto se jedan zove P1, a drugi se zove P2.
Ajmo sada malo ispod haube.
Program P2 ima potpuno istu funkciju kao i program P1, ali program P2 ima 200 linija koda. Iako oba programa imaju istu funkciju, razlog ovoj razlici u broju linija koda je ta sto je jedan programer nasao nacin da mu se algoritam u programu P1 izvrsi u 50 prolaza, koji zahteva minimum 100 linija koda, a drugi programer je nasao nacin da mu se algoritam izvrsi u 125 prolaza, koji zahteva minimum 200 linija koda.
Pitanje glasi:
Da li ce program P1 brze raditi zato sto ima manje linija koda, odnosno zato sto ce mu se algoritam izvrsiti u manje prolaza nego u programu P2, u kojem se algoritam izvrsava u vise prolaza, ili brzina rada programa zavisi od nekih drugih stvari (izuzev slabe ili jake hardverske konfiguracije racunara)?29. новембар 2006. у 7:52 pm #49932debelizmajУчесникbrzina izvrsavanja nekog programa najvise zavisi od nacina na koj ise izvrsava kod…zapravo kako je optimizovan, postoje programi kod kojih vreme izvrsavanja logaritamski zavisi nekog n, kod drugih je to stepeno, kod trecih je linearno….e sad, ako uspes da sa stepene zavisnosti vremena izvrsavanja koda preradis da se izvrsavaju u logaritamskoj zavisnosti ti si ubrzao program…ovako, brojanje prolaza kroz kod ti nece dati neki odgovor zato sto programi imaju dosta inputa od kojih ti zavisi dalje izvrsavanje….
nadam se da sam ti pomogao , a jos vise se nadam da sam bio jasan posto nisam bas najsrecniji u objasnjavanju29. новембар 2006. у 8:02 pm #49933BrokeBodyУчесникpostoje programi kod kojih vreme izvrsavanja logaritamski zavisi nekog n, kod drugih je to stepeno, kod trecih je linearno…
I kad je gledam kod, kako da znam dal’ sad njegovo vreme izvrsavanja od nekog n zavisi logaritamski, stepeno, linearno…?
Imam osecaj da sam sad lupio neko ekstra glupo pitanje? 😀
29. новембар 2006. у 9:02 pm #49934debelizmajУчесникimam dobru knjigu iz dizajna i analize algoritama, na engleskom je ali ako si zainteresovan poslacu ti je na mejl, ja sam imao predmet na drugoj koji se tako zvao….
29. новембар 2006. у 9:06 pm #49935jbobanУчесникI kad je gledam kod, kako da znam dal’ sad njegovo vreme izvrsavanja od nekog n zavisi logaritamski, stepeno, linearno…?
Treba da proceniš broj prolazaka kroz neki deo programa. Npr. koliko puta će program izvršiti glavni deo programa u odnosu na broj elemenata niza n za sledeća dva primera:
1. Sabrati prvih n clanova niza
[code]
for(i = 0; i < n; i++) {
// Nesto tipa: suma += niz;
}
[/code]2. Sortirati niz u neopadajućem poretku
[code]
for(i = 0; i < n – 1; i++) {
for(j = i + 1; j < n; j++) {
// Ispitaj, zameni…
}
}
[/code]29. новембар 2006. у 9:11 pm #49936cyber_brain_mfkgУчесникaj prosledi taj pdf please(ako je pdf, ako nije onda sta god bude bilo):D!!! ili ako imash site zakaci ga tamo i ostavi url!!! 😉
moj mail ti je [email protected]
aj pis!
29. новембар 2006. у 9:22 pm #49937BrokeBodyУчесникaj prosledi taj pdf please(ako je pdf, ako nije onda sta god bude bilo):D!!! ili ako imash site zakaci ga tamo i ostavi url!!! 😉
Kakav bre pdf? Kakav bre sajt?
Onaj scenario u mom prvom postu sam uneo iz glave, u trenutku kucanja. 😀
29. новембар 2006. у 9:33 pm #49938BrokeBodyУчесникOnaj prvi primer samo razumem cemu sve moze da posluzi, ali i dalje ne razumem kako ja na osnovu tog primera mogu da znam od cega zavisi njegovo vreme izvrsavanja – logaritamski, stepeno, linearno, i sta vec sve ima.
E za onaj drugi primer sa ugnjezdavanjem petlji nisam cak ni znao da moze da posluzi za sortiranje niza u neopadajucem poretku, a kamo li nesto drugo. 😀
29. новембар 2006. у 9:35 pm #49939debelizmajУчесникpolako broke polako…sve se uchi…:D
29. новембар 2006. у 9:39 pm #49940BrokeBodyУчесникMa sto duze ucim ovo programiranje, sve vise ozbiljno sumnjam da ti ja po prirodi nisam za ove stvari ili ti…
*glup*. 🙁 -
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.