Primer prvog kolokvijuma iz Konstrukcije i analize algoritama
1. Koristeci pravila zakljucivanja konstruisati dokaz koji pokazuje da iz hipoteza:
(H1) Svaki student Matematickog fakulteta, koji redovno dolazi na casove, zavrsice fakultet u roku. (H2) Svako ko zavrsi fakultet u roku, moze da nadje dobar posao. (H3) Postoji student Matematickog fakulteta koji ne moze da nadje dobar posao. sledi zakljucak: (Z) Postoji student Matematickog fakulteta koji nije redovno dolazio na casove. 2. Principom matematicke indukcije pokazati da vazi: 2n > 2n + 1, za svaki prirodan broj n 3. 3. Napisati pseudokod algoritma ranac kod koga nije moguce ponavljanje predmeta i koji je slo zenosti O(K). Potrebno je samo utvrditi da li postoji resenje problema, a nije potrebno rekonstruisati samo resenje, ukoliko ono postoji. 4. Neka je dat ranac velicine K = 16 i pet predmeta velicina k1 = 9, k2 = 4, k3 = 6, k4 = 8, k5 = 3. Demonstrirati algoritam utvrdjivanja da li postoji podskup predmeta kojim se ranac moze popuniti do vrha slozenosti O(nK), ako je moguce ponavljanje predmeta. Ukoliko je moguce popuniti ranac, utvrditi kojim se predmetima ranac moze popuniti. 5. Odrediti edit rastojanje stringova X = bacab i Y = caab. Kolika je vremenska, a kolika prostorna slozenost koriscenog algoritma? Kolika je dodatna slozenost odredjivanja niza operacija kojima se dolazi do edit rastojanja? 6. Napisati pseudokod algoritma za odredjivanje edit rastojanja dve niske u slucaju kada se umetanja znakova na kraj jednog od nizova ne racunaju.