Підтримка
www.wikidata.uk-ua.nina.az
Algori tm po shuku v glibinu angl Depth first search DFS algoritm dlya obhodu dereva strukturi podibnoyi do dereva abo grafu Robota algoritmu pochinayetsya z korenya dereva abo inshoyi obranoyi vershini v grafi i zdijsnyuyetsya obhid v maksimalno mozhlivu glibinu do perehodu na nastupnu vershinu Poshuk u glibinuPoryadok obhodu vershin KlasAlgoritm poshukuStruktura danihGrafNajgirsha shvidkodiyaO V E displaystyle O V E Prostorova skladnist u najgirshomu vipadkuO V displaystyle O V OpisNehaj G V E prostij zv yaznij graf usi vershini yakogo poznacheno poparno riznimi simvolami U procesi poshuku vglib vershinami grafu G nadayut nomeri DFS nomeri ta pevnim sposobom danih dlya zberezhennya mnozhin yaku nazivayut stekom Zi steku mozhna viluchiti tilki toj element kotrij bulo dodano do nogo ostannim stek pracyuye za principom ostannij prijshov pershij vijshov LIFO Inakshe kazhuchi dodavannya j viluchennya elementiv u steku vidbuvayetsya z odnogo kincya yakij nazivayetsya verhivkoyu steku DFS nomeri vershini h poznachayut DFS h AlgoritmCej rozdil ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cej rozdil dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno gruden 2021 Navedemo kroki algoritmu Pochati z dovilnoyi vershini v Vikonati DFS v 1 Vklyuchiti cyu vershinu v stek Rozglyanuti vershinu u verhivci steku nehaj ce vershina h Yaksho vsi rebra incidentni vershini h poznacheno to perejti do kroku 4 inakshe do kroku 3 Nehaj x y nepoznachene rebro Yaksho DFS u uzhe viznacheno to poznachiti rebro x y shtrihovoyu liniyeyu ta perejti do kroku 2 Yaksho DFS u ne viznacheno to poznachiti rebro x y potovshenoyu sucilnoyu liniyeyu viznachiti DFS u yak chergovij DFS nomer vklyuchiti cyu vershinu v stek i perejti do kroku 2 Viklyuchiti vershinu h zi steku Yaksho stek porozhnij to zupinitis inakshe perejti do kroku 2 Obchislyuvalna skladnist algoritmuObchislyuvalnoyu skladnistyu algoritmu abo prosto skladnistyu nazvemo kilkist krokiv vikonuvanih algoritmom v girshomu vipadku Vona ye funkciyeyu vid rozmirnosti zadachi predstavlenoyi vhidnimi danimi Napriklad dlya grafu sho zadayetsya spiskami incidentnosti rozmirnist zadachi predstavlyayetsya yak para n m Skladnist algoritmu viznachayetsya yak funkciya f taka sho f n m dorivnyuye chislu krokiv algoritmu dlya dovilnogo grafu z n vershinami i m rebrami Pid krokom algoritmu rozumiyetsya mashinna komanda i pri takomu viznachenni kroku obchislyuvalna skladnist zalezhit vid konkretnoyi sistemi komand i sposobu translyaciyi Nas zhe bude nadali cikaviti ne tochna skladnist algoritmu obchislennya yakoyi praktichno nemozhlivo a asimptotichna skladnist yaka viznachayetsya shvidkistyu rostu chisla krokiv algoritmu pri neobmezhenomu zbilshenni rozmirnosti zadachi Krim togo obchislyuvalna skladnist algoritmu obchislena pri riznih sistemah komand abo sposobah translyaciyi vidriznyayutsya odin vid odnogo v p raziv de p rechova konstanta a yih shvidkist rostu odnakova Dlya porivnyannya shvidkosti rostu dvoh funkcij f n i g n budemo vikoristovuvati poznachennya f n O g n abo f n W g n Budemo govoriti sho funkciya f n maye poryadok zrostannya ne bilshe nizh funkciya g n sho poznachayetsya f n O g n todi i tilki todi koli isnuyut C const i N gt 0 taki sho f n lt C g n n gt N Budemo govoriti sho funkciya f n maye poryadok zrostannya ne menshe nizh funkciya g n sho poznachayetsya f n W g n todi i tilki todi koli isnuyut C const i N gt 0 taki sho f n gt C g n n gt N Ocinimo obchislyuvalnu skladnist rekursivnogo variantu algoritmu poshuku u glibinu O n O 2m O n O m O n m PsevdokodRekursivna versiya algoritmu def dfs v pomititi v yak vidvidanu obijti v pryamomu poryadku v dlya vsih reber i incidentnih do v takih sho i ne vidvidano dfs i obijti v zvorotnomu poryadku v Versiya bez rekursiyi dfs graf G spisok L porozhnij derevo T porozhnye obrati pochatkove rebro x poshuk x poki L ne porozhnij vidaliti rebro v w z golovi L yaksho w ne vidvidano dodati v w do T poshuk w poshuk vershina v vidvidati v dlya kozhnogo rebra v w dodati rebro v w na pochatok L Div takozhSpisok algoritmiv Poshuk v glibinu z iterativnim zagliblennyam Poshuk u shirinu Dvonapravlenij poshuk Obhid derevaPrimitkiT Kormen Ch Lejzerson R Rivest K Stajn 2009 1990 22 3 Poshuk vglib Vstup do algoritmiv vid 3rd MIT Press i McGraw Hill ISBN 0 262 03384 4 Ce nezavershena stattya pro algoritmi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi
Топ