Depth First Search bruges ofte, når du skal søge i hele træet. Det er nemmere at implementere (ved at bruge rekursion) end BFS og kræver mindre tilstand: Mens BFS kræver, at du gemmer hele 'grænsen', kræver DFS kun, at du gemmer listen over overordnede noder for det aktuelle element.
Hvornår ville DFS være bedre end BFS?
BFS er mere velegnet til at søge i toppunkter, der er tættere på den givne kilde. DFS er mere egnet når der er løsninger væk fra kilden. 4. BFS overvejer alle naboer først og er derfor ikke egnede til at træffe beslutningstræer, der bruges i spil eller puslespil.
Hvad kan DFS bruges til?
Applikationer. Dybde-først-søgning bruges i topologisk sortering, planlægningsproblemer, cyklusdetektion i grafer og løsning af gåder med kun én løsning, såsom en labyrint eller et sudoku-puslespil. Andre applikationer involverer analyse af netværk, f.eks. test af, om en graf er todelt.
Hvad er fordelene og ulemperne ved DFS?
Den vil nå til målknudepunktet på en kortere tidsperiode end BFS, hvis den krydser den rigtige vej. Det kan finde en løsning uden at undersøge meget af søgningen, fordi vi kan få den ønskede løsning med det første. Ulemper: Det er muligt, at tilstande bliver ved med at gentage sig.
Hvad er fordelene ved DFS frem for BFS?
Det ville i det væsentlige blive ved med at gå ned ad den første sti og ville aldrig finde elementet. BFS ville til sidst findeelement. Hvis størrelsen af grafen er begrænset, ville DFS sandsynligvis finde et outlier (større afstand mellem rod og mål) element hurtigere, hvor BFS ville finde et tættere element hurtigere.