k叉树的性质_相关树及性质

二叉树

性质:

第 n 层最多有 2n-1 个节点

深度为 k 的二叉树最多有 2k - 1 个节点(满二叉树)

对于任何一颗二叉树,如果其叶节点有 n0 个,度为2的非叶节点有 n2个,则有 n0 = n2 + 1

n个节点的完全二叉树的深度为 ⌊log2n⌋+1

如果有一颗有n个节点的完全二叉树的节点按层次序编号,对任一层的节点i(1

math?formula=%5Cleqslant i

math?formula=%5Cleqslant n)有

如果i=1,则节点i是二叉树的根,无双亲,如果i>1,则其双亲节点为 ⌈i/2⌉

如果2i>n,则节点i没有左孩子,否则其左孩子为2i

如果2i+1>n,则节点没有右孩子,否则右孩子为2i+1

d96b9b4d2fa5

image

d96b9b4d2fa5

image

满二叉树

节点的度都是2且叶子节点都在同一层次上

是一种特殊的二叉树

完全二叉树

与满二叉树深度相同,并且编号一一对应的二叉树

性质:

若 i

math?formula=%5Cleqslant ⌊n/2⌋,则结点i为分支结点,否则为叶子结点

最下面层的叶节点一定出现在左边

深度为k的完全二叉树,其最少的结点数=深度为 k-1 的满二叉树的结点数+1,即 2k-1个;其最多结点数=深度为k的满二叉树的结点数,即 2k-1

顺序存储完全二叉树A[1,...,n],当 i

math?formula=%5Cleqslant (n-1)/2 时,结点A[i]的右孩子是结点 A[2i+1]

哈夫曼树(最优二叉树)

性质:

有n个叶子结点

没有度为1的结点

总的结点数为2n-1

深度

math?formula=%5Cleqslant n-1

形态不唯一

要使一棵二叉树的带权路径长度最小,必须使权值越大的叶子节点越靠近根节点,权值越小的节点越远离根节点

利用哈夫曼树可构造前缀编码

最小生成树

在连通网的所有生成树中,所有边的代价和最小的生成树

看谁代价最小,来 PK 呀!P-prime, K-kruskal

prim算法

算法思想:从图中任取一个顶点,把它当成一棵树,然后从这棵树的顶点相邻的边中选取权值最小的边,并把这条边相邻的顶点并入树中,此时得到一颗有两个顶点的树,然后继续从这棵树的两个顶点相邻的边中选取一条最短的边,将其和相邻顶点再次并入树中,重复操作直到所有顶点都被并入树中。

d96b9b4d2fa5

prime算法图解

kruskal算法

算法思想:每次从所有边中选出权值最小的边,将其并入树中,重复操作直到所有顶点都被并入树中。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值