Гүн анхны хайлтыг модыг бүхэлд нь хайх шаардлагатай үед ихэвчлэн ашигладаг. Энэ нь BFS-ийг бодвол хэрэгжүүлэхэд хялбар (recursion ашиглан) бөгөөд бага төлөв шаарддаг: BFS нь таныг "хил"-ийг бүхэлд нь хадгалахыг шаарддаг бол DFS нь зөвхөн одоогийн элементийн эх зангилааны жагсаалтыг хадгалахыг шаарддаг.
DFS хэзээ BFS-ээс дээр байх вэ?
BFS нь өгөгдсөн эх сурвалжтай ойр байгаа оройг хайхад илүү тохиромжтой. DFS нь эх сурвалжаас хол шийдэл байгаа үед илүү тохиромжтой байдаг. 4. BFS нь бүх хөршүүдийг хамгийн түрүүнд авч үздэг тул тоглоом, тааварт ашигладаг модыг шийдвэр гаргахад тохиромжгүй.
DFS-г юунд ашиглаж болох вэ?
Програм. Гүн-эхний хайлтыг топологийн эрэмбэлэх, хуваарь гаргах бодлого, графикт цикл илрүүлэх, төөрдөг байшин, судоку гэх мэт ганцхан шийдэл бүхий оньсого шийдвэрлэхэд ашигладаг. Бусад программуудад сүлжээг шинжлэх, жишээ нь график хоёр талт эсэхийг шалгах зэрэг орно.
DFS-ийн давуу болон сул талууд юу вэ?
Энэ нь зөв замаар дамжвал BFS-ээс бага хугацаанд зорилгын цэгт хүрнэ. Энэ нь бид хүссэн шийдлийг эхний алхамдаа олж авах боломжтой тул хайлтыг маш их судлахгүйгээр шийдлийг олох болно. Сул талууд: Улсууд давтагдах магадлалтай.
DFS нь BFS-ээс юугаараа давуу вэ?
Энэ нь үндсэндээ эхний замаар явах бөгөөд элементийг хэзээ ч олохгүй. BFS эцэст нь олох болно элемент. Хэрэв графикийн хэмжээ хязгаарлагдмал бол DFS илүү ойр элементийг илүү хурдан олох байсан бол DFS хэт (үндэс ба зорилгын хоорондох том зай) элементийг илүү хурдан олох магадлалтай.