zoukankan      html  css  js  c++  java
  • Prufer序列与树的计数(坑)

    (prufer)序列:

    无根树转(prufer)序列:

    不断找编号最小的叶子节点,删掉并在序列中加入他相连的节点。

    (prufer)转无根树:

    找到在目前(prufer)序列中未出现且未使用的编号最小的的节点与当前位相连,当前位从(prufer)序列中删除,节点标为已使用,剩余最后两个未使用的节点相连。

    性质:

    (1.prufer)序列中某个编号出现的次数就等于这个编号的节点在无根树中的度数-1。
    (2.)一棵n个节点的无根树唯一地对应了一个长度为(n-2)的数列,(n)个点的无根树有(n^{(n-2)})种。

    树的计数

    (1.)n个节点度数依次为(D_1,D_2,D_3...D_n)的无根树的种类有(可重集的组合):

    [frac{(n-2)!}{((D_{1}-1)! imes... imes(D_{n}-1)!)} ]

    (2.)(1)的基础上,有(m)个节点度数未知,剩余(left)个位置(prufer中,共n-2个),种类有(先把left挑出来( imes)再让m个点分left位置,乘法原理):

    [{(n-2)! imes m^{left}}over{((D_{1}-1)! imes cdots imes(D_{n-m}-1)! imes left!)} ]

    (3.n)个点有标号有根树:(n^{n-2} imes n=n^{n-1})
    (4.n)个点无标号有根树:坑——生成函数
    (5.n)个点无标号无根树:坑——生成函数

  • 相关阅读:
    day23_雷神_git
    day23_雷神_crm-day2
    day21_雷神_django第四天
    day20_雷神_django第三天
    day19_雷神_django第二天
    day18_雷神_django第一天
    day17_雷神_数据库 小全
    day16_雷神_前端04
    awksedgrep 补充
    python 操作MongoDB非关系型数据库
  • 原文地址:https://www.cnblogs.com/Smeow/p/10582636.html
Copyright © 2011-2022 走看看