Підтримка
www.wikidata.uk-ua.nina.az
Cherga z prioritetami angl priority queue ce struktura danih sho priznachena dlya obslugovuvannya mnozhini elementiv kozhnij z yakih dodatkovo maye prioritet pov yazanij z nim U prioritetnij cherzi pershim obslugovuyetsya element yakij maye najvishij prioritet vidpovidno element sho maye najnizhchij prioritet bude obslugovanij ostannim U deyakih realizaciyah yaksho dva elementi mayut odnakovij prioritet voni podayutsya vidpovidno do poryadku v yakomu voni buli zakladeni v toj chas yak v inshih realizaciyah uporyadkuvannya elementiv z odnakovim prioritetom ne viznacheno Hocha chergi z prioritetami chasto realizuyutsya kupami voni konceptualno vidriznyayutsya vid nih Cherga prioritetiv ce abstraktne ponyattya yak spisok abo karta tak samo yak spisok mozhe buti realizovana zv yazanim spiskom abo masivom cherga z prioritetom mozhe buti realizovana kupoyu abo bezlichchyu inshih metodiv takih yak nevporyadkovanij masiv OperaciyiCherga z prioritetami povinna pidtrimuvati prinajmni taki operaciyi is empty pereviryaye chi cherga porozhnya insert with priority dodaye element do chergi z vidpovidnim jomu prioritetom pull highest priority element viluchaye z chergi element sho maye najvishij prioritet povertayuchi jogo Inshi nazvi pop element Off get maximum element abo get front most element Deyaki konvenciyi zminyuyut poryadok prioritetiv vvazhayuchi sho menshi znachennya mayut vishij prioritet tomu ce mozhe buti vidome yak get minimum element i chasto v literaturi nazivayetsya get min Takozh cyu operaciyu mozhna zaminiti dvoma okremimi funkciyami peek at highest priority element i delete element yaki mozhut buti ob yednani dlya stvorennya pull highest priority element Krim togo peek u comu konteksti chasto nazivayetsya find max abo find min sho povertaye element z najvishim prioritetom ale ne zminyuye chergu chasto realizuyetsya i majzhe zavzhdi vikonuyetsya za chas O 1 displaystyle O 1 Cya operaciya ta yiyi produktivnist O 1 displaystyle O 1 mayut virishalne znachennya dlya bagatoh zastosuvan prioritetnih cherg Suchasnishi realizaciyi mozhut pidtrimuvati skladnishi operaciyi taki yak pull lowest priority element sho pereviryaye pershi kilka elementiv z najvishim abo najnizhchim prioritetom ochishayuchi chergu ochishayuchi pidmnozhini chergi vikonuyuchi paketnu vstavku ob yednuyuchi dvi abo bilshe cherg v odnu zbilshuyuchi prioritet bud yakogo elementa tosho Vikoristannya chergi z prioritetom dlya sortuvannyaZ tochki zoru obchislyuvalnoyi skladnosti prioritetni chergi uzgodzhuyutsya z algoritmami sortuvannya Semantika prioritetnih cherg proponuye metod sortuvannya vstavlyati vsi elementi yaki slid sortuvati v chergu prioritetiv i poslidovno vidalyati yih takim chinom voni vihoditimut u vidsortovanomu poryadku Naspravdi ce procedura yaka vikoristovuyetsya kilkoma algoritmami sortuvannya pislya vidalennya rivnya abstrakciyi sho nadayetsya chergoyu prioritetu Cej metod sortuvannya ekvivalentnij takim algoritmam sortuvannya Nazva Realizaciya prioritetnoyi chergi Najkrasha shvidkodiya Serednya shvidkodiya Najgirsha shvidkodiya Piramidalne sortuvannya Kupa n log n displaystyle n log n n log n displaystyle n log n n log n displaystyle n log n Plavne sortuvannya Kupa Leonardo n displaystyle n n log n displaystyle n log n n log n displaystyle n log n Sortuvannya viborom Nevporyadkovanij masiv n 2 displaystyle n 2 n 2 displaystyle n 2 n 2 displaystyle n 2 Sortuvannya vklyuchennyam Vporyadkovanij masiv n displaystyle n n 2 displaystyle n 2 n 2 displaystyle n 2 Sortuvannya dvijkovim derevom Zbalansovane dvijkove derevo poshuku n log n displaystyle n log n n log n displaystyle n log n n log n displaystyle n log n RealizaciyaProsti realizaciyi Isnuye bagato prostih sposobiv realizaciyi chergi z prioritetami prote yak pravilo voni ne ye efektivnimi Taki sposobi dopomagayut krashe zrozumiti sho take prioritetna cherga Napriklad mozhna zberegti vsi elementi v nevporyadkovanomu spisku U comu vipadku kozhnogo razu shob otrimati element z najvishim prioritetom potribno bude vikonuvati poshuk po vsih elementah spisku U velikij O notaciyi O 1 displaystyle O 1 chas vstavki O n displaystyle O n chas vityaguvannya za rahunok poshuku Zvichajna realizaciya Shob pidvishiti produktivnist chergi z prioritetami zazvichaj vikoristovuyut kupu yak svoyu magistral dayuchi O log n displaystyle O log n produktivnist dlya vstavok i viluchen i O n displaystyle O n dlya pochatkovoyi pobudovi Riznovidi bazovih kup taki yak kupa spoluchen abo kupa Fibonachchi mozhut nadati krashi asimptotichni rozmiri dlya deyakih operacij Alternativno koli vikoristovuyetsya samozbalansovane dvijkove derevo poshuku vstavka i vidalennya takozh zajmayut chas O log n displaystyle O log n hocha pobudova derev z isnuyuchih poslidovnostej elementiv zajmaye chas O n log n displaystyle O n log n sho harakterno pri nayavnosti dostupu do cih struktur danih napriklad iz storonnih abo standartnih bibliotek Specializovani kupi Isnuye dekilka specializovanih struktur danih kup yaki abo zabezpechuyut dodatkovi operaciyi abo pokrashuyut realizaciyi na osnovi kup dlya konkretnih tipiv klyuchiv zokrema cilochislovih klyuchiv Koli nabir klyuchiv dorivnyuye 1 2 C i potribni lishe insert find min ta extract min chergu vidra mozhna skonstruyuvati yak masiv zv yazanih spiskiv C z vkazivnikom na verhnyu chastinu spochatku C Vstavka elementa z klyuchem k dodaye element do k komirki i onovlyuye top min top k obidvi operaciyi vikonuyutsya za stalij chas Extract min vidalyaye ta povertaye odin element zi spisku z vershinoyu indeksu pislya chogo zbilshuye vershinu yaksho ce neobhidno doki vin znovu ne bude vkazuvati na nepustij spisok Ce zajmaye chas O C displaystyle O C u najgirshomu vipadku Taki chergi korisni dlya sortuvannya vershin grafu za yihnim stepenem Dlya naboru klyuchiv 1 2 C derevo van Emde Boasa pidtrimuvatime minimum maximum insert delete search extract min extract max predecessor i successor operaciyi v O log log C displaystyle O log log C chas ale maye prostir dlya malih cherg blizko O 2m 2 de m kilkist bitiv u znachenni prioritetu Algoritm dereva zlittya Fredmana i Villarda realizuye minimalnu operaciyu za chas O 1 displaystyle O 1 i operaciyi insert i extract min v O log n displaystyle O sqrt log n chas odnak avtor stverdzhuye sho Nashi algoritmi mayut lishe teoretichnij interes Postijni faktori sho berut uchast u chasi vikonannya viklyuchayut praktichnist Dlya dodatkiv yaki vikonuyut bagato operacij peek dlya kozhnoyi operaciyi extract min skladnist chasu dlya peek mozhe buti zmenshena do O 1 displaystyle O 1 u vsih realizaciyah derev i kup keshuvannyam elementu najvishogo prioritetu pislya kozhnoyi vstavki i vidalennya Dlya vstavki ce dodaye ne bilshe postijnoyi vartosti oskilki znovu vstavlenij element porivnyuyetsya tilki z ranishe keshovanim minimalnim elementom Dlya vidalennya ce maksimum sprichinyuye dodatkovi vitrati yaki zazvichaj deshevshi nizh vartist vidalennya tomu na zagalnu skladnist chasu suttyevo ne vplivaye Monotonni prioritetni chergi ce specializovani chergi yaki optimizovani dlya vipadku koli ne vstavlyayetsya zhoden element sho maye nizhchij prioritet u vipadku min heap nizh bud yakij poperedno vityagnutij element Ce obmezhennya zadovolnyayetsya kilkoma praktichnimi zastosuvannyami prioritetnih cherg Priklad realizaciyi Priklad realizaciyi prioritetnoyi chergi na C za dopomogoyu dvozv yaznogo spisku include lt iostream gt include lt list gt using namespace std struct Pair char value size t priority Pair char v size t p value v priority p class PriorityQueue list lt Pair gt queue public void enqueue Pair elem for auto it queue begin it queue end it if it gt priority gt elem priority queue insert it elem return queue push back elem char dequeue char result queue front value queue erase queue begin return result size t size return queue size char top return queue front value bool isEmpty return queue size 0 Div takozhCherga struktura danih Stek Spisok abstraktnij tip danih Masiv struktura danih Kupa struktura danih Algoritmi sortuvannya Asociativnij masivLiteraturaT Kormen Ch Lejzerson R Rivest K Stajn 2009 1990 Section 6 5 Chergi z prioritetami Vstup do algoritmiv vid 3rd MIT Press i McGraw Hill ISBN 0 262 03384 4 Ce nezavershena stattya pro informacijni tehnologiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi
Топ