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

堆的建立

时间:2014-08-13 22:19:17      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:工作   sp   存储   数组   排序   过程   元素   bs   

一般采用数组a[n]来存储堆。首先要知道很重要的一点:当a[i]作为父结点的时候,其两个左右子结点为:a[2i+1]、a[2i+2];而当a[i]作为子结点时,其父结点为a[(i-1)/2](这个可以根据前面一条推算出来)。

 建一个新堆的过程:1)将某个结点A作为父结点,我们要做的工作是:要将这个结点A和其下面的结点组建成一个堆。

                          2)将所有这样的A进行多轮建堆的操作

思路:步骤1)的思路类似于直接插入排序,1)先将结点A的元素内容保存在temp中。2)

堆的建立,布布扣,bubuko.com

堆的建立

标签:工作   sp   存储   数组   排序   过程   元素   bs   

原文地址:http://www.cnblogs.com/hushunfeng/p/3911161.html

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