Moderátor: FeroG
PekarcikPatrik píše:Je mozne na rieseni uloh vyuzit vynimky? alebo to radsej urobit inak?
FeroG píše:A ktora uloha si to vyzaduje?
PekarcikPatrik píše:Pouzil som to v ulohe "Úplný strom" kde vdaka vynimke viem zanedbat vela if-ov, Otazka je ako narocny je beh Vynimky po jej odchytenie
FeroG píše:Odporucanie z PAZ1a: Vynimky nemaju byt zneuzivane na veci, ktore ide vyriesit inak, pretoze ... a je na to vela dovodov. Zdroje potrebne na odchytavanie vynimiek su jedna vec. Okrem toho je tu problem s "logikou pouzitia". Vynimka ma indikovat vynimocnu situaciu, nie sprostredkovat vysledok. Vratenie vysledku totiz nie je vynimocnou situaciou (aspon by teda nemalo byt).
http://java-performance.info/throwing-a ... very-slow/
http://stackoverflow.com/questions/2990 ... exceptions
PekarcikPatrik píše:Dakujem, po prezreti druheho linku som dostal motivaciu casovo otestovat verziu cez vynimky a verziu bez nich
FeroG píše:Kedze som mal moznost v Moodle vidiet tvoj kod, uz teraz viem povedat, ze realne casove rozdiely neuvidis ziadne. Totiz vynimku hadzes celkovo len raz, t.j. len raz robis drahsiu cinnost. Z hladiska casu je drahe hadzanie vynimiek (toto ani nikto neoptimalizuje, kedze sa to ma diat vynimocne). Pri tvojom rieseni je skor problem s "principom" pouzitia vynimiek a naslednou porozumitelnostou kodu nez s efektivnostou.
Uzol koren = new Uzol(5, new Uzol(2, null, null), new Uzol(9, new Uzol(8, null, null), new Uzol(10, null, null)));
Uzol koren2 = new Uzol(5, new Uzol(2, new Uzol(1, null, null), new Uzol(3, null, null)), new Uzol(9, new Uzol(8, null, null), new Uzol(10, null, null)));
int i;
long l;
l = System.currentTimeMillis();
for (i = 1; i < 100000000; i++) {
koren.jeUplny();
koren2.jeUplny();
}
l = System.currentTimeMillis() - l;
System.out.println("testovanie: " + l + " ms");
FeroG píše:Ono vzdy je zaujimava otazka ako interpretovat cisla. Napr. aky pomer by si dostal, ak by si mal vacsie stromy? Trebars, co keby si mal 10000-prvkovy uplny strom a celkom vpravo by si dovesil este jeden uzol, aby sa stal neuplny?
rodakj píše:Je povolené mať pomocné metódy (resp. len jednu) , napríklad v triede Osoba?
matejp píše: Ak je množina hodnôt prázdna je lepšie vyhodiť výnimku alebo jednoducho (ne)vykonať nič ?
Užívatelia prezerajúci fórum: Žiadny registrovaný užívateľ nie je prítomný a 3 hostia