Depth First Search odatda butun daraxtni qidirish kerak bo'lganda ishlatiladi. Uni amalga oshirish (rekursiya yordamida) BFSga qaraganda osonroq va kamroq holat talab qiladi: BFS butun “chegara”ni saqlashni talab qilsa, DFS faqat joriy elementning asosiy tugunlari roʻyxatini saqlashni talab qiladi.
DFS qachon BFSdan yaxshiroq?
BFS berilgan manbaga yaqinroq cho'qqilarni qidirish uchun ko'proq mos keladi. DFS manbadan uzoqda yechimlar mavjud bo'lganda ko'proq mos keladi. 4. BFS birinchi navbatda barcha qo‘shnilarni ko‘rib chiqadi va shuning uchun o‘yin yoki boshqotirmalarda ishlatiladigan qaror qabul qilish uchun mos emas.
DFS nima uchun ishlatilishi mumkin?
Ilovalar. Chuqurlikdan birinchi qidiruv topologik saralash, rejalashtirish masalalari,grafiklarda siklni aniqlash va labirint yoki sudoku boshqotirmasi kabi faqat bitta yechim bilan boshqotirmalarni echishda qoʻllaniladi. Boshqa ilovalar tarmoqlarni tahlil qilishni oʻz ichiga oladi, masalan, grafik ikki tomonlama ekanligini tekshirish.
DFSning afzalliklari va kamchiliklari qanday?
U toʻgʻri yoʻldan oʻtsa, maqsad tuguniga BFSga qaraganda qisqa vaqt ichida yetib boradi. Ko'p qidiruvni o'rganmasdan yechim topishi mumkin, chunki biz kerakli yechimni birinchi qadamda olishimiz mumkin. Kamchiliklari: Shatlar takrorlanishi mumkin.
DFS ning BFSdan qanday afzalligi bor?
U asosan birinchi yo'lda davom etadi va hech qachon elementni topa olmaydi. BFS oxir-oqibat topadielement. Agar grafikning oʻlchami chekli boʻlsa, DFS chetdagi elementni (ildiz va maqsad orasidagi masofani) tezroq topadi, BFS esa yaqinroq elementni tezroq topadi.