Prehľadávanie do hĺbky (v angličtine depth-first search, DFS) je algoritmus na prehľadávanie grafov. Na vstup mu dáme graf, v ktorom vyznačíme jeden štartovací vrchol $S$ a algoritmus nám nájde všetky vrcholy, do ktorých sa dá z vrcholu $S$ dostať po hranách grafu. V neorientovanom grafe nám teda nájde všetky vrcholy, ktoré sú v rovnakom komponente ako $S$. Od prehľadávania do šírky sa líši poradím, v akom nachádza jednotlivé vrcholy.
Pri prehľadávaní grafu budeme postupne objavovať a spracúvať jednotlivé vrcholy. Aby sme zbytočne niektoré vrcholy nespracúvali viackrát, každý vrchol si počas jeho spracovania nejako označíme1. Pre jednoduchosť vyjadrovania budeme v tomto texte neoznačené vrcholy volať zelené a označené vrcholy červené.
Predstavme si robota, ktorého na začiatku položíme do vo vrcholu $S$ a potom dookola vykonáva nasledovné inštrukcie:

V samotnom programe to bude vyzerať tak, že ku každému vrcholu budeme mať jednu premennú, v ktorej si budeme pamätať, či je označený. ↩