一道C语言经典题目题目,谢谢大佬们了

如果有一个关键码的集合K = {k0k1, k2…,kn-1}把它的所有元素按完全二叉树的顺序存储方式存储在一个一维数组中,并满足:Ki <= K2i+1 且 Ki<= K2i+2 (Ki >= K2i+1 且 Ki >= K2i+2) i = 01,2…则称为小堆(或大堆)。将根节点最大的堆叫做最大堆或大根堆根节点最小的堆叫做最小堆或小根堆。

(2)性质 1.堆中某个节点的值总是不大于或不小于其父节点的值;


2.堆总是一棵完全二叉树

调整1和8的位置,8的左子树构成的结构被破坏每一次调整元素的时候都有可能破坏其子堆的结构。

(2)堆的插入 先将数字插入到数组的尾部然后进行向上调整算法,直到满足堆


例如:在一个堆中插入80

(3)堆的删除 删除堆是删除堆顶的数据,将堆顶的数据根最后一个数据一换然后删除数组最后一个数据,再进行向下调整算法


VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 c语言经典题目 的文章

 

随机推荐