Depth-First Search (DFS) è una strategia di ricerca che inizia esplorando un percorso in profondità prima di tornare indietro ed esplorare percorsi alternativi. D'altra parte, Breadth-First Search (BFS) inizia dal nodo radice ed esegue la scansione di ogni nodo adiacente prima di visitare il nodo successivo in ordine di livello. DFS viene in genere utilizzato per trovare un determinato elemento in un grafico, mentre BFS viene spesso utilizzato per attraversare l'intero albero o grafico e per trovare il percorso più breve da un nodo all'altro. In termini di complessità dello spazio, DFS è più efficiente e necessita di meno memoria rispetto a BFS.
Confronta e contrasta la ricerca in profondità (DFS) e la ricerca in ampiezza (BFS).