Depth First Search se obično koristi kada trebate pretražiti cijelo stablo. Lakše je implementirati (koristeći rekurziju) nego BFS i zahtijeva manje stanja: Dok BFS zahtijeva da pohranite cijelu 'granicu', DFS zahtijeva samo da pohranite listu roditeljskih čvorova trenutnog elementa.
Kada bi DFS bio bolji od BFS-a?
BFS je pogodniji za pretraživanje vrhova koji su bliži datom izvoru. DFS je prikladniji kada postoje rješenja daleko od izvora. 4. BFS prvo uzima u obzir sve susjede i stoga nije pogodan za stabla odlučivanja koja se koriste u igricama ili slagalicama.
Za šta se DFS može koristiti?
Prijave. Pretraga u dubinu se koristi u topološkom sortiranju, problemima planiranja, detekciji ciklusa u grafovima i rješavanju zagonetki sa samo jednim rješenjem, kao što je labirint ili sudoku slagalica. Druge aplikacije uključuju analizu mreža, na primjer, testiranje da li je graf bipartitan.
Koje su prednosti i nedostaci DFS-a?
Doći će do ciljnog čvora u kraćem vremenskom periodu od BFS-a ako pređe na pravi put. Može pronaći rješenje bez ispitivanja mnogo pretraživanja jer možemo dobiti željeno rješenje u prvom pokretu. Nedostaci: Moguće je da se stanja stalno ponavljaju.
Šta je prednost DFS-a nad BFS-om?
U suštini bi nastavio da ide prvim putem i nikada ne bi pronašao element. BFS bi na kraju pronašaoelement. Ako je veličina grafa konačna, DFS bi vjerovatno brže pronašao element koji je van granica (veća udaljenost između korijena i cilja), dok bi BFS brže pronašao bliži element.