Skirtumas tarp BFS ir DFS

BFS ir DFS

Pirma platumo paieška (dar vadinama BFS) yra paieškos metodas, naudojamas išplėsti visus tam tikro grafiko mazgus. Šią užduotį ji atlieka ieškodama kiekvieno sprendimo, norėdama ištirti ir išplėsti šiuos mazgus (arba jų sekų derinį). Iš esmės BFS nenaudoja euristinio algoritmo (arba algoritmo, ieškančio sprendimo per kelis scenarijus). Gavę visus mazgus, jie pridedami prie eilės, vadinamos „First In, First Out“ eilute. Tie mazgai, kurie nebuvo ištirti, yra „laikomi“ konteineryje, pažymėtame „atvira“; ištyrę jie vežami į konteinerį, pažymėtą „uždarytu“.

Pirmoji gylio paieška (dar vadinama DFS) yra paieškos metodas, kuris giliau patenka į paieškos mazgą, kol bus pasiektas tikslas (arba tol, kol bus mazgas be jokių kitų permutacijų ar „vaikų“). Suradus vieną tikslą, ieškoma atgal į ankstesnį mazgą, kuris buvo naudojamas su sprendimu, pakartojant procesą, kol bus sėkmingai ieškoma visų mazgų. Iš esmės mazgai ir toliau atidėlioti tolimesniam tyrinėjimui - tai vadinama nerekursiniu įgyvendinimu.

BFS ypatybės yra erdvės ir laiko sudėtingumas, išsamumas, išsamumo įrodymas ir optimalumas. Erdvės sudėtingumas reiškia mazgų skaičiaus proporciją giliausiame paieškos lygyje. Laiko sudėtingumas reiškia faktinį „laiko“ kiekį, naudojamą kiekvienam keliui, kurį mazgas eis paieškoje, apsvarstyti. Išbaigtumas iš esmės yra paieška, kurios metu grafikoje randamas sprendimas, neatsižvelgiant į tai, koks jis yra. Išsamumo įrodymas yra negiliausias lygis, kurio metu tikslas yra randamas mazge tam tikrame gylyje. Galiausiai, optimalumas reiškia nesvertą BFS - tai yra grafikas, naudojamas vieneto pakopos kainai.

DFS yra natūraliausias išvestis, naudojant apimančią medį - tai yra medis, sudarytas iš visų viršūnių ir kai kurių briaunų, esančių nejudančiame grafike. Šiame formavime grafikas yra padalintas į tris klases: priekinės briaunos, nukreiptos nuo mazgo iki vaiko mazgo; užpakaliniai kraštai, nukreipiantys nuo mazgo į ankstesnį mazgą; ir kryžminių briaunų, kurios neatlieka nė vieno iš šių.

Santrauka:

1. BFS ieško kiekvieno sprendimo grafike, kad išplėstų jo mazgus; DFS užauga giliai vaiko mazge, kol bus pasiektas tikslas.

2. BFS ypatybės yra erdvės ir laiko sudėtingumas, išsamumas, išsamumo įrodymas ir optimalumas; natūraliausias DFS išvestis yra išplatėjęs medis, susidedantis iš trijų klasių: priekiniai kraštai, užpakaliniai kraštai ir skersiniai kraštai.