Depth First Search brukes ofte når du trenger å søke i hele treet. Det er enklere å implementere (ved å bruke rekursjon) enn BFS, og krever mindre tilstand: Mens BFS krever at du lagrer hele 'grensen', krever DFS bare at du lagrer listen over overordnede noder til det gjeldende elementet.
Når ville DFS være bedre enn BFS?
BFS er mer egnet for å søke i hjørner som er nærmere den gitte kilden. DFS er mer egnet når det finnes løsninger borte fra kilden. 4. BFS vurderer alle naboer først og er derfor ikke egnet for beslutningstrær som brukes i spill eller gåter.
Hva kan DFS brukes til?
Applikasjoner. Dybde-først-søk brukes i topologisk sortering, planleggingsproblemer, syklusdeteksjon i grafer, og løse gåter med bare én løsning, for eksempel en labyrint eller et sudoku-puslespill. Andre applikasjoner innebærer å analysere nettverk, for eksempel å teste om en graf er todelt.
Hva er fordelene og ulempene med DFS?
Den vil nå til målnoden i løpet av en kortere tidsperiode enn BFS hvis den går i riktig bane. Det kan finne en løsning uten å undersøke mye av søket fordi vi kan få den ønskede løsningen i første omgang. Ulemper: Det er mulig at tilstander fortsetter å gjenta.
Hva er fordelen med DFS fremfor BFS?
Det ville i hovedsak fortsette å gå nedover den første banen og ville aldri finne elementet. BFS ville til slutt finneelement. Hvis størrelsen på grafen er begrenset, vil DFS sannsynligvis finne et uteligger (større avstand mellom rot og mål) element raskere der BFS vil finne et nærmere element raskere.