(十)加工并存储数据的数据结构

         树和二叉树

                二叉树定义为所有节点的儿子个数不超过两个

         优先队列和堆

              优先队列定义:一,插入一个数值,二,取出最小数值(获取数值,并删除)

            堆性质:儿子的值一定不小于父亲的值,此外树节点是从上到下,从左到右排列

           堆实现有两两种方式:一,利用指针(难);二,利用数组(易);由父节点得知子节点:设父节点编号为i,则子节点为2i+1,2i+2;

         利用优先队列:


PKU3253也可以利用优先队列解决。

   二叉搜索树

     功能:一,插入一个数值;二,查询是否包含某个数值;三,删除某个数值。

满足条件:左子树上所有节点都比自己小,右子树所有节点都比自己大。

二叉查找树有时候需要平衡才能体现出其性能,否则跟链表的复杂度一样了,于是有平衡二叉树。


并查集

用来管理元素分组情况的数据结构。

结构:初始化,合并,查询。

实现注意点:树高度,rank从小向大连边,路径压缩。

利用并查集解决:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值