码迷,mamicode.com
首页 >  
搜索关键字:小堆    ( 496个结果
STL最小堆
前几天同学参加腾讯实习的网络笔试,闲聊中得知一道编程题目,最近也在看算法,觉得刚好用来练手。这题觉得以最小堆实现比较方便,在C++中,以中 make_heap(), push_heap(), pop_heap(), sort_heap()四个函数管理堆十分方便。make_heap(RandomIt ...
分类:其他好文   时间:2015-04-11 14:31:56    阅读次数:267
k路归并 算法导论8-4(e)
使用STL中priority_queue(由最大最小堆实现的)来实现。注意传递参数的时候需要传递三个。模板声明:priority_queue这里的实现要求输入完全正确,所以代码移植性非常差。#include #include #include using namespace std;typedef ...
分类:编程语言   时间:2015-04-10 14:57:29    阅读次数:179
C++排序(小堆排序)
#include #include using namespace std; template class MinHeap { public: MinHeap(int sz=DefaultSize) { capacity = sz>DefaultSize?sz:DefaultSize; heap = new Type[capacity]; size = 0; } MinHea...
分类:编程语言   时间:2015-04-08 18:05:40    阅读次数:149
算法导论--第六章、堆排序
1. 堆的概念堆的数据结构是一种数组对象;堆可以视作为一颗完全二叉树(其中,树的每一层都填满,最后一层可能除外);树中每个节点与数组中存放该节点值的元素对应;堆可以划分为两类:a) 最大堆:除了根节点,有A[parent(i)] >= A[i],最大元素即根节点;b) 最小堆:除了根节点,有A[pa...
分类:编程语言   时间:2015-04-08 12:22:57    阅读次数:120
Min Stack
设计一个最小堆,要求实现push、pop、top、getMin几个功能。 思路:主要问题在于getMin,必须是一个常数级的查找返回,因此最好是每push一个就和当前min进行比较,始终保存min。 class MinStack {public: MinStack() { head = new Li...
分类:其他好文   时间:2015-04-07 13:47:08    阅读次数:127
最小的k个数 2.5
基于partition做的,当index!=k时一直while循环 如果indexk,在前面找 另外最后的结果如果是0到k-1这k个数包括k-1的话,那么开始k要-1传入数组 如果不包括k-1的话,那么可以不用减1 复杂度为NlogN 另外有NlogK的算法,利用最小堆 利用partition的解法...
分类:其他好文   时间:2015-04-07 11:35:03    阅读次数:177
最大堆/最小堆/优先队列 实现代码(c++)
自我感觉代码写的比较乱,这方面要好好注意一下。总结:1.在使用vector::size_type 类似的类型时,千万要注意循环的条件判断,很容易发生溢出的危险!所以我最后很懒的选择使用int - -。2.下标表示和元素个数表示之间的细微差别。下标之间的变换关系:父节点 parent(i)=(i-1)...
分类:编程语言   时间:2015-04-05 17:16:34    阅读次数:151
【Eclipse】【转】eclipse优化配置
这是我在网上找到的关于Eclipse的优化方法,非常给力,特转来以作收藏。首先了解下JVM中几个相关的概念:Xms:最小堆大小Xmx:最大堆大小Xmn:年轻代堆大小Xss:每个线程的堆大小PermSize:初始持久代大小MaxPermSize:最大持久代大小一般Xms、Xmx设置相同,PermSiz...
分类:系统相关   时间:2015-03-31 17:50:08    阅读次数:175
堆的动态操作(插入、删除、调整)
堆有最大堆和最小堆之分,最大堆就是每个节点的值都>=其左右孩子(如果有的话)值的完全二叉树。最小堆便是每个节点的值都<=其左右孩子值的完全二叉树。...
分类:其他好文   时间:2015-03-31 10:49:09    阅读次数:148
排序和顺序统计学(1)
也有好几天没记录算法学习情况了,这两天看了《算法导论》的第二部分,排序和顺序统计学,记录一下,也顺便增强记忆1.堆排序 就是最大堆和最小堆,用一维数组存储,数据结构是完全二叉树。主要过程分为构建最大/最小堆,插入操作,弹出最大值,取最大/最小值,改变堆中的权值。 构建堆就是从第一个非叶子节点...
分类:编程语言   时间:2015-03-21 22:50:14    阅读次数:215
496条   上一页 1 ... 38 39 40 41 42 ... 50 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!