码迷,mamicode.com
首页 > 其他好文 > 详细

小堆 线索二叉树补充

时间:2016-08-10 00:59:56      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:const 小堆

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是一个指针,其指向不能更改,其指向的空间数据可以更改!!!


小堆 线索二叉树补充

标签:const 小堆

原文地址:http://11596096.blog.51cto.com/11586096/1836329

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!