主題
Search

普呂弗編碼


LabeledTrees

一種編碼,它提供了 n^(n-2)標記樹 (在 n 個節點上)與 n-2 個整數的字串之間的雙射,這些整數選自 1 到 n 的字母表。可以使用以下方法將標記樹轉換為 Prüfer 編碼LabeledTreeToCode[g] 在 Wolfram 語言 包中Combinatorica`,並且可以使用以下方法將程式碼轉換為 標記樹CodeToLabeledTree[code]。

PrueferCode

Prüfer 的雙射基於以下事實:每棵樹至少有兩個度為 1 的節點(即,樹葉)。因此,與標籤最低的葉子關聯的節點 v 是唯一確定的,然後將 v 作為程式碼中的第一個符號。然後刪除此標籤最低的葉子,並重復該過程,直到只剩下一條邊,從而得到總共 n-2 個介於 1 和 n 之間的整數 (Skiena 1990)。這在上面顯示的標記樹中得到了證明。葉子刪除的順序是 4、6、2、1、7 和 3,分別對應於關聯節點 1、2、1、3、3 和 5。


另請參閱

標記樹

使用 探索

參考文獻

Prüfer, H. "Neuer Beweis eines Satzes über Permutationen." Arch. Math. Phys. 27, 742-744, 1918.Skiena, S. Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica. Reading, MA: Addison-Wesley, 1990.

在 上被引用

普呂弗編碼

請引用為

Weisstein, Eric W. "Prüfer Code." 來自 Web 資源。 https://mathworld.tw/PrueferCode.html

主題分類