I matematikk er Prüfer-koding en metode for kompakt å beskrive et tre med nummererte hjørner. Denne kodingen representerer et tre med n nummererte hjørner med en sekvens av n-2 termer. En gitt sekvens P tilsvarer ett og bare ett tre nummerert fra 1 til n .
Prüfer-sekvenser ble først brukt av Heinz Prüfer for å demonstrere Cayleys formel i 1918. De kan også brukes i dataprogrammering for å registrere strukturen til et tre mer kompakt enn med pekere .
Prüfer-sekvensen er bygget med følgende algoritme :
Données : Arbre T Tant qu'il reste plus de deux sommets dans l'arbre T Identifier la feuille v de l'arbre ayant le numéro minimum Ajouter à la suite P le seul sommet s adjacent à v dans l'arbre T Enlever de l'arbre T le sommet v et l'arête incidente à v Fin Tant queTenk på treet i figuren ovenfor.
I begynnelsen er 1 arket med minimumstall , det er altså det man trekker seg først, og man setter 4 (nummeret på grenen det var koblet til) i fortsettelsen av Prüfer.
Vertices 2 og 3 er den neste som skal fjernes, og vi legger til to ganger til 4 i Prüfer-sekvensen.
Vertex 4 er nå et blad og har det laveste tallet, så vi fjerner det og legger til 5 (grenen det var festet til) på slutten av suiten.
Det er bare to hjørner igjen, så vi stopper. Prüfer-sekvensen som koder for treet er .
Denne algoritmen er basert på en sekvens av grader fra hvert toppunkt i treet .
Treet kan rekonstrueres ved hjelp av følgende inverse algoritme:
Données : suite de Prüfer P de longueur n – 2 Créer un graphe T composé de n sommets isolés numérotés de 1 à n Créer une suite D composée de n valeurs toutes à 1, appelées degrés Pour chaque valeur xi de P Augmenter de 1 le degré du sommet numéroté xi dans D Fin Pour chaque Pour chaque valeur xi de P Trouver le sommet de degré 1 qui a le plus petit numéro, soit j ce numéro Ajouter l'arête allant de xi en j au graphe T Diminuer de 1 les degrés de xi et de j dans D Fin Pour chaque Ajouter l'arête reliant les deux sommets restants de degré 1Tenk på følgende . Det må tillate oss å rekonstruere treet i figuren ovenfor.
I en første fase lager vi en graf med seks isolerte hjørner nummerert fra 1 til 6. Vi tillegger dem alle en standardgrad lik 1. Deretter krysser vi P ved å øke graden av hjørnene som vises der: vi øker tre ganger graden av toppunkt 4 og en gang graden av toppunkt 5. Til slutt har vi gradene D = (1, 1, 1, 4, 2, 1).
I neste fase går vi gjennom P igjen:
Til slutt kobler vi sammen de to gjenværende toppunktene i grad 1, nemlig toppunktene i tall 5 og 6. Vi har faktisk rekonstruert det opprinnelige treet T.
I stedet for en sekvens av grader fra hvert toppunkt, kan vi bruke en sekvens av hjørner som vi ennå ikke har behandlet.
Treet kan rekonstrueres ved hjelp av følgende inverse algoritme:
Données : suite de Prüfer P de longueur n – 2 Créer un graphe T composé de n sommets isolés numérotés de 1 à n Créer une suite I des numéros de 1 à n Tant qu'il reste des éléments dans P et plus de deux éléments dans I Soit s le premier élément de la suite P Identifier le plus petit élément j de I n'apparaissant pas dans la suite P Ajouter l'arête allant de j à s Enlever j de I et s de P Fin Tant que Ajouter l'arête reliant les deux sommets restant dans ITenk på følgende . Det må igjen tillate oss å rekonstruere treet i figuren ovenfor.
I utgangspunktet var jeg = (1, 2, 3, 4, 5, 6). Deretter:
Til slutt kobler vi de gjenværende toppunktene 5 og 6. Vi har rekonstruert det opprinnelige treet T.
I kombinatorisk vitenskap sier Cayleys formel at antallet "dekorerte" (nummererte) trær med n hjørner er . Figuren motsatt gjør det mulig å se at det faktisk finnes og tydelige dekorerte trær med henholdsvis 2, 3 eller 4 hjørner.
Vi viser først at:
Prüfer-kodingen gir derfor en sammenheng mellom settet av trær nummerert med n hjørner og settet med sekvenser med lengden n - 2 sammensatt av verdier i intervallet [1, n ]. Ettersom sistnevnte har elementer, og siden Prüfer-koding er bijektiv, demonstrerer dette Cayleys formel.
Vi kan gå lenger og bevise at antall trær som dekker en fullstendig graf over grader er lik den multinomiale koeffisienten .
Beviset er basert på det faktum at tallet i Prüfer-oppfølgeren vises nøyaktig ganger.
(en) Vadim Lozin , "Fra ord til grafer og tilbake" , i C. Martín-Vide, A. Okhotin og D. Shapira (redaktører), språk og automatteori og applikasjoner. LATA 2019 , Springer Cham, koll. "Forelesningsnotater i Computer Science" ( n o 11417)2019( ISBN 978-3-030-13434-1 , DOI 10.1007 / 978-3-030-13435-8_3 ) , s. 43–54.
<img src="https://fr.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" title="" width="1" height="1" style="border: none; position: absolute;">