温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

小堆 线索二叉树补充

发布时间:2020-08-01 23:51:11 来源:网络 阅读:349 作者:汇天下豪杰 栏目:编程语言

1、小堆:

  堆的构造,i>数组直接生成堆(向下调整),iii>插入创建堆(向上调整);

  (1)、怎么实现一次调整?

小堆  线索二叉树补充

  找到最后一个非叶子结点,n/2-1;一直往下调整即可!

  (2)堆排----->优先级队列

  堆的删除,只能是堆顶元素,再拿最后一个元素补充上去。在向下做一次调整。形成新的堆结构(满足堆的性质),将删除的数字输出就是堆排。

  小堆:根(父)小于左右结点;最小的数字先出;

  大堆:根(父)大于左右结点;最大的数字先出;   因而,进行堆排是就是优先级队列!

小堆  线索二叉树补充

2、线索二叉树的查找父结点图形解释

  利用空指针指向前驱、后继结点

小堆  线索二叉树补充

3、编程时const一些注意

  (1)、在C++中,当我们传的是常量时,引用接收时,形参必须const类型接受,否则出错!

  常量必须常引用接受。

例:int find(32);   int find(const int &value);

  (2)、typedef void  *IP;

  const IP m;怎么理解?

因为IP是数据类型,const和数据类型可以互换位置,

  const IP m; <==>  IP const m;  即void *const m; m是一个指针,其指向不能更改,其指向的空间数据可以更改!!!


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI