1.Lengvas
Kokie yra trys „skaldyk ir valdyk“ algoritmo žingsniai?
- ASkaityk, skaičiuok, rašyk
- BSurikiuok, ieškok, grąžink
- CSpėk, tikrink, kartok
- DPadalyk, išspręsk, sujunk
2.Lengvas
Ciklas pradeda nuo i = 1 ir kiekvienoje iteracijoje padvigubina i, kol i > n. Kiek iteracijų jis atlieka?
- AApie n²
- BApie n
- CApie n / 2
- DApie log₂ n
3.Lengvas
Kas yra rekursija?
- ADuomenų struktūros tipas
- BFunkcija, kuri iškviečia pati save su mažesniais įvesties duomenimis
- CRikiavimo metodas
- DCiklas, kuris niekada nesibaigia
4.Vidutinis
Koks yra amortizuotas laiko sudėtingumas pridedant elementą į dinaminio masyvo, kuris prisipildęs padvigubina savo talpą, galą?
- AO(1)
- BO(n²)
- CO(n)
- DO(log n)
5.Vidutinis
Rekurentinės lygties T(n) = 2T(n/2) + O(n) sprendinys yra:
- AO(n²)
- BO(n)
- CO(n log n)
- DO(log n)
6.Vidutinis
Kuris rikiavimo algoritmas yra stabilus?
- AGreitasis rikiavimas (įprasta versija vietoje)
- BRikiavimas krūva
- CRikiavimas suliejimu
- DRikiavimas išrinkimu (įprasta versija)
7.Sunkus
Koks yra Dijkstros algoritmo su dvejetaine krūva vykdymo laikas grafui su V viršūnių ir E briaunų?
- AO(V × E)
- BO(V³)
- CO((V + E) log V)
- DO(V + E)
8.Sunkus
Kas išplauktų, jei kas nors rastų polinominio laiko algoritmą vienam NP-pilnam uždaviniui?
- AVisi eksponentinio laiko algoritmai nedelsiant imtų veikti tiesiniu laiku
- BKiekvieną NP uždavinį būtų galima išspręsti per polinominį laiką, taigi P = NP
- CStabdymo problema taptų išsprendžiama
- DTik tas vienas uždavinys pereitų į P
Atsakymai
- 1. D · Padalyk, išspręsk, sujunk
- 2. D · Apie log₂ n
- 3. B · Funkcija, kuri iškviečia pati save su mažesniais įvesties duomenimis
- 4. A · O(1)
- 5. C · O(n log n)
- 6. C · Rikiavimas suliejimu
- 7. C · O((V + E) log V)
- 8. B · Kiekvieną NP uždavinį būtų galima išspręsti per polinominį laiką, taigi P = NP
Išsamūs sprendimai žingsnis po žingsnio: praktikuokite šią temą svetainėje examproblems.com.