数据结构-堆
文章平均质量分 69
普通网友
这个作者很懒,什么都没留下…
展开
-
排序之堆排序
学习数据结构整整一年了,感觉排序很重要,尽管很多时候直接调用标准库sort函数进行快速排序很方便,但是经典的排序算法却很有味道。现在谈谈堆排序。 堆排序是基于数组支持快速随机访问元素的,在其他线性数据结构下堆排序不一定有优势。关于小顶堆、大顶堆的概念在此就不多说了。堆排序是一种选择排序法,不过直接选择排序每次在选择最小值或最大值时要进行时间复杂度为O(n)的比较,而堆排序可以利原创 2014-02-22 20:40:10 · 1092 阅读 · 0 评论 -
二项堆的读书笔记
关于堆,个人感觉是有很对学问的。通常意义上的堆是棵完全二叉树且一般为顺序结构,分为大顶堆和小顶堆。堆的插入、删除、查找、修改等操作时间复杂度(最好、最坏、平均)均为O(log(N)),其中直接修改可能破坏堆结构,可以先删除原有元素再添加新元素。这里所有操作均为单个元素。这是通常意义堆的局限所在。 为了克服堆只能在O(log(N))时间复杂度内操作单个元素的缺点,引入了新的数据结构原创 2014-04-06 17:32:19 · 1351 阅读 · 0 评论