Odaberite pravu strukturu podataka
Odabir prave strukture podataka može pretvoriti sporo rješenje u jasno i učinkovito. U ovom kvizu, uskladit ćete stvarne programske scenarije s najboljom strukturom - nizovima, popisima, stogovima, re...
Pokreni kviz
Odaberite težinu i broj pitanja za početak.
O ovom kvizu
Što ovaj kviz pomaže vježbati
Odabir strukture podataka često se temelji na kompromisima: brzina naspram memorije, jednostavnost naspram fleksibilnosti, i prosječna izvedba naspram najgore izvedbe. Ovaj kviz vas obučava da prepoznate obrasce u izjavama problema i povežete ih sa strukturom koja odgovara.
Svako pitanje je višestrukog izbora s 4 opcije i bez tajmera, tako da možete razmisliti o ograničenjima poput učestalosti pretraživanja, obrazaca umetanja, potreba za redoslijedom i briga o konkurentnosti.
Težina i postavke pitanja
Težina je miješana namjerno: vidjet ćete brze pobjede (npr., "treba LIFO") uz nijansirane slučajeve (npr., "treba brze provjere članstva plus redoslijed"). Također možete odabrati broj pitanja i težinu prije početka, što olakšava kratko zagrijavanje ili punu duboku sesiju vježbanja.
Uobičajene zamke koje treba izbjegavati
Mnogi pogrešni odgovori dolaze iz prekomjernog fokusiranja na jednu operaciju (poput brzog pretraživanja) dok se ignoriraju druge (poput čestih umetanja, brisanja ili upita u rasponu). Druga uobičajena zamka je odabir strukture koju dobro poznajete umjesto one koja odgovara ograničenjima.
- Zbunjujući nizove i povezane liste kada obrasci umetanja/brisanja dominiraju
- Korištenje stoga/redoslijeda kada zapravo trebate nasumični pristup ili prioritetno razvrstavanje
- Posezanje za hash mapom bez razmatranja redoslijeda ili upita u rasponu
- Propuštanje kada je hrpa bolja od ponovnog sortiranja
- Tretiranje stabala i grafova kao zamjenjivih kada se odnosi razlikuju
Savjeti za bolje iskorištavanje svakog pokušaja
Nakon svakog pitanja, pitajte se koje operacije moraju biti brze, a koje mogu biti sporije, a zatim potvrdite svoj izbor prema rubnim slučajevima. Ako promašite pitanje, prepišite scenarij u terminima operacija (pretraživanje, umetanje, brisanje, min/max, prolazak) i pokušajte ponovno s različitim postavkama težine.
Primjeri pitanja
Koja struktura podataka je najbolja za implementaciju LIFO (Last In First Out) sustava?
- A.Stog
- B.Red
- C.Niz
- D.Povezana lista
Koja je struktura podataka optimalna za brze pretrage i pohranu jedinstvenih stavki?
- A.Hash tabela
- B.Niz
- C.Povezana lista
- D.Stog
Koja struktura podataka se obično koristi za predstavljanje hijerarhijskih podataka?
- A.Stablo
- B.Graf
- C.Niz
- D.Stog
Česta pitanja o kvizu
Koliko pitanja ima u ovom kvizu?
Ovaj kviz ima 125 pitanja usmjerenih na odabir najbolje strukture podataka za dani scenarij.
U kojem formatu su pitanja?
Svako pitanje ima 4 opcije, a nema tajmera pa možete razmišljati o kompromisima.
Je li težina prijateljska prema početnicima?
Težina je miješana, tako da ćete dobiti i osnove i nijansirana pitanja o izvedbi i dizajnerskim kompromisima.
Mogu li odabrati manje pitanja ili drugačiju težinu?
Da. Prije početka, možete odabrati svoj preferirani broj pitanja i težinu kako biste se uskladili s vašim ciljem vježbanja.
Koje se teme najčešće pojavljuju?
Očekujte nizove, povezane liste, stogove, redove, hash mape/skupove, hrpe, stabla i grafove s pitanjima temeljenim na scenarijima.
Povezani kvizovi
Big-O za osnovne operacije
Testirajte svoju intuiciju za Big-O vremensku složenost kroz osnovne operacije koje koristite svaki dan. Usporedit ćete uobičajene strukture podataka i primijetiti koje su operacije konstantne, logaritamske, linearne ili lošije. Odaberite broj pitanja i razinu težine koja odgovara vašem cilju učenja, a zatim učite iz brzih, fokusiranih objašnjenja.

Obilazak stabala i svojstva hrpe
Ojačajte svoje razumijevanje obilazaka stabala i svojstava hrpe s fokusiranim skupom pitanja o strukturama podataka. Proći ćete kroz redoslijede obilazaka, invarijante hrpe i tipične rubne slučajeve koji se nalaze u intervjuima i tečajevima. Odaberite broj pitanja i težinu koja vam odgovara, a zatim učite iz svake objašnjenja dok idete.
Objašnjeni modeli usluga računalstva u oblaku
Provjerite svoje razumijevanje kako se usluge u oblaku isporučuju i koriste. Pokriva IaaS, PaaS, SaaS, kontejnere naspram VM-ova, regije/zone dostupnosti i osnove zajedničke odgovornosti.
Komponente i uloge računalnog hardvera
Uparite ključne komponente računala s onim što rade i kako utječu na performanse. Obuhvaća CPU, GPU, RAM, vrste pohrane, matične ploče, napajanja i priključke.
Osnove sintakse programskih jezika
Testirajte svoje znanje o uobičajenoj sintaksi programiranja kroz popularne jezike. Pitanja se fokusiraju na varijable, petlje, funkcije i osnovne strukture podataka bez potrebe za dubokom teorijom računalnih znanosti.
Cybersecurity prijetnje i obrane
Identificirajte uobičajene cyber prijetnje i najbolje obrambene prakse koje se koriste za smanjenje rizika. Obuhvaća phishing, malware, lozinke, MFA, osnove enkripcije i sigurne navike pregledavanja.