码迷,mamicode.com
首页 >  
搜索关键字:树堆    ( 163个结果
Heap sort
堆排序 堆排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。可以利用数组的特点快速定位指定索引的元素。 堆分为大根堆和小根堆,是完全二叉树。大根堆的要求是每个节点的值都不大于其父节点的值,即A[PARENT[i]] >= A[i]。在数组的非降序排序中,需要使用的就是大根堆,因为根据大根堆的要求可知,最大的值一定在堆顶。 维护堆的性质 M...
分类:其他好文   时间:2015-04-17 11:37:45    阅读次数:138
堆排序
排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。大根堆的要求是每个节点的值都不大于其父节点的值,即A[PARENT[i]] >= A[i]。在数组的非降序排序中,需要使用的...
分类:编程语言   时间:2015-04-16 21:15:41    阅读次数:124
索引初探(三)
由于前一篇写的有点匆忙很多地方不是很简单,这一片再描述一些概念和细节。 首先,我们都知道在数据库中的存储分为两种结构,一是堆;二是B树。堆的数据是没有排序也就没有结构性可言,我们可以简单理解为没有索引的表数据就是以堆的形式存在的。与之相对的,索引都是B树的形式存储,这样的话索引中数据是有序排列的。....
分类:其他好文   时间:2015-04-03 01:25:04    阅读次数:134
堆数据结构+堆排序+最大优先队列的堆的实现
对于堆排序,首先要先知道什么是堆数据结构,堆数据结构就是一个完全二叉树,但是它有自己的性质. 例如最大堆的性质为:A[PARENT[i]]>=A[i];即每一个结点的值大于等于其左右孩子的值,小于等于其父节点的值。我们在这里只讨论最大堆的情况。我们知道一颗完全二叉树对应一个最大堆的形式,我们要做的就是将二叉树转化为最大堆,这就是所谓的最大堆的维护,我们定义函数MaxheapFY(A,i)来进行操作...
分类:编程语言   时间:2015-03-20 11:04:21    阅读次数:177
hihocoder 1109 堆优化的Prim算法
题目链接:http://hihocoder.com/problemset/problem/1109,最小生成树 + 堆优化(优先队列)。 可以用优先队列,也可以自己手动模拟堆,为了练手,我两种都试了下,优先队列还是要方便一点,不过堆要快一点。 好好学算法,没有无缘无故的爱,也没有无缘无故减少...
分类:编程语言   时间:2015-03-06 00:55:32    阅读次数:249
数据结构复习(1)bst
平衡树treap:(1)树+堆。具体是随机某个节点的值,然后维护这个值满足堆的性质。(2)代码实现sbt:(1)陈大神的节点大小平衡树,其实就是根据四种情况进行调整,而这四种情况也是其他bst会使用的调整方式。中心思想就是当节点信息变时,用maintain调整(2)代码实现procedure mai...
分类:其他好文   时间:2015-02-13 22:26:01    阅读次数:181
基本数据结构知识
本文记录常用的数据结构,介绍它们的基本结构、使用细节、常见用途和关联的常用算法。仅包含思想,不涉及具体实现。1:常用数据结构有:堆,栈,队列,链表,散列表,二叉树,红黑树。2:堆。3:栈4:队列。5:链表。6:散列表。7:二叉树。8:红黑树。
分类:其他好文   时间:2015-02-08 15:18:35    阅读次数:142
算法系列笔记4(红黑树)
随机构建的二叉查找树的高度期望值为O(lgn),并不代表所有的二叉查找树的高度都为O(lgn)。但是对于有些二叉查找树的变形来说,动态集合各基本操作的性能却总是很好的,如红黑树、B树、平衡二叉树(AVL树)、跳跃表(确切的说不是树,或多或少有树的结构)、treaps(树堆)等。这里我们讲解红黑树。        平衡的意思就是完成动态数据集的操作(minimum、maximum、search、p...
分类:编程语言   时间:2015-02-03 23:03:09    阅读次数:293
数据结构基础(19) --堆与堆排序
完全二叉树 首先让我们回顾一下完全二叉树的两个性质:  性质1:具有n个结点的完全二叉树的深度为[logn](向下取整)+1。  性质2:若对含 n 个结点的完全二叉树从上到下且从左至右进行 1 至 n 的编号,则对完全二叉树中任意一个编号为 i 的结点:    (1) 若 i=1,则该结点是二叉树的根,无双亲,否则,编号为 [i/2](向下取整)的结点为其双亲结点;    (2) 若 2i>n,...
分类:编程语言   时间:2015-01-13 21:40:06    阅读次数:221
BZOJ 2006 NOI 2010 超级钢琴 堆+主席树
题目大意:给出一些音符,将它们组成和旋。和旋只能由[l,r]个音符组成。优美程度为所有音符的和。求k个和旋的又优美程度的最大和。 思路:先处理出来前缀和,以便O(1)去除一段的和。然后考虑对于一个音符来说,向左边扩展的音符是一段长度为r - l + 1的区间,取出的最大和是sum[i] - sum[p],sum[i]是一定的,要想让整段和最大,需要让sum[p]最小。之后就是区间k小值和...
分类:其他好文   时间:2014-12-12 19:16:03    阅读次数:167
163条   上一页 1 ... 13 14 15 16 17 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!