Graafin virittävä puu on puu , tietyn graafin aligraafi, jolla on sama määrä pisteitä kuin alkuperäinen graafi. Epävirallisesti sanottuna virittävä puu saadaan alkuperäisestä graafista poistamalla maksimimäärä jaksoihin sisältyviä reunoja, mutta rikkomatta graafin liitettävyyttä. Virittävä puu sisältää kaikki alkuperäisen graafin kärjet ja sisältää reunan.
Virittävä puu on tietyn yhdistetyn suuntaamattoman graafin asyklinen yhdistetty osagraafi , joka sisältää kaikki sen kärjet .
Hajautuvan metsän käsite on moniselitteinen; se voi tarkoittaa jotakin seuraavista alagraafista:
Virtapuuta kutsutaan joskus myös virittäväksi puuksi , virittäväksi puuksi tai kuvaajarungoksi . Eri kirjoittajien sanan "ostovny" painotus on osoitettu ensimmäisessä (sanasta ostov) tai toisessa tavussa.
Virittävä puu voidaan rakentaa lähes millä tahansa graafin läpikulkualgoritmilla, kuten syvyys ensin -haku tai leveys ensin -haku . Se koostuu kaikista reunapareista siten, että algoritmi, katsoen kärkeä , löytää viereisyysluettelostaan uuden, aiemmin löytämättömän kärjen.
Virtavilla puilla, jotka on rakennettu kuljetettaessa graafia huipusta Dijkstran algoritmin avulla, on ominaisuus, että graafin lyhin polku mihin tahansa toiseen kärkeen on (se on myös ainoa) polku tähän kärkeen rakennetussa virittävässä puussa.
On myös useita rinnakkaisia ja hajautettuja virittäviä puualgoritmeja. Käytännön esimerkkinä hajautetusta algoritmista voidaan antaa STP -protokolla .
Jos graafin kullekin reunalle on määritetty paino (pituus, hinta jne.), niin optimaalisen virittävä puun löytämiseen liittyy lukuisia algoritmeja minimivirittävän puun löytämiseksi, mikä minimoi siihen sisältyvien reunojen painojen summan. .
Ongelma virittävän puun löytämisestä, jossa kunkin kärjen aste ei ylitä jotakin ennalta määrättyä vakiota , on NP-täydellinen [3] .
Virtaavan puun valintaa ja etäreunojen lukumäärän laskemista sähköpiirien kaavioissa käytetään riippumattomien piirien lukumäärän laskemiseen sähköpiirin analyysissä piirivirtojen menetelmällä [4] .