堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下...
分类:
其他好文 时间:
2015-03-15 21:16:01
阅读次数:
141
题目:给你一些数据结构上的操作,判断该数据结构是栈、队列、还是优先队列。
分析:初级DS,模拟。构建三种结构,直接模拟,然后根据结果判断。
说明:优先队列用最大堆实现。
#include
#include
#include
#include
#include
#include
using namespace std;
//stack
class stack
{
privat...
分类:
其他好文 时间:
2015-03-15 11:00:17
阅读次数:
151
堆排序思想:堆排序,顾名思义,就是基于堆。堆分为最大堆和最小堆,事实上就是全然二叉树。最大堆要求节点的元素都要大于其孩子,最小堆要求节点元素都小于其左右孩子,两者对左右孩子的大小关系不做不论什么要求,事实上非常好理解。有了上面的定义,我们能够得知,处于最大堆的根节点的元素一定是这个堆中的最大值。事实...
分类:
编程语言 时间:
2015-03-12 16:52:55
阅读次数:
148
堆排序的时间复杂度是,具有空间原址性,即任何时候都只需要常数个额外的元素空间存储临时数据。一、堆二叉堆是一个数组,可看成一个近似的完全二叉树,树上的每个结点对应数组中的一个元素。除了最底层外,该树是完全充满的,而且是从左到右填充。二叉堆可以分为两种形式:最大堆和最小堆。在最大堆中除根节点外所有结点i...
分类:
编程语言 时间:
2015-03-11 19:04:58
阅读次数:
172
注:堆分为最大堆和最小堆两种,下面我们讨论的堆都是指的最大堆,最小堆的性质与其是类似的。堆数据结构是一种数组对象,可以被视为一棵完全二叉树(这棵二叉树除最后一层外,其余每层都是填满的);我们用一个数组来存储一个堆,表示堆的数组有两个属性:length[A]表示的是数组中的元素个数,headsize[A]表示堆中元素个数(也就是说数组中的元素不一定都是堆中的元素)。
下面不加证明的给出一些堆的性质:...
分类:
编程语言 时间:
2015-03-11 00:46:49
阅读次数:
192
名称稳定性时间复杂度空间复杂度描述数据对象为链表平均最坏冒泡排序YO(n^2)O(1)无序区,有序区。 选择排序 O(n^2)O(1)有序区,无序区稳定性Y,其它同数组插入排序YO(n^2)O(1)有序区,无序区同数组堆排序 O(n log n)O(1)最大堆,有序区 归并排序YO(n log n)...
分类:
编程语言 时间:
2015-03-02 18:18:21
阅读次数:
134
实现一个O(lgn)的最大堆优先队列的delete操作。Heap-Delete(A,i)操作能够将节点i从对中A删除。代码说明:假如删除序号为i的节点,那么我们先把最后的节点,放到i中去,然后对i进行堆维护,即向下维护堆,然后此时得到的序号为i的值向下能满足堆的性质,但向上不一定可以,所以我们再向上...
分类:
编程语言 时间:
2015-03-01 14:27:44
阅读次数:
180
堆优先队列:特殊的”队列”,取出元素的顺序是依照元素的优先权(关键字)大小,而不是元素进入队列的先后顺序
堆是优先队列的完全二叉树表示。
堆的两个特性:
①结构性:用数组表示的完全二叉树
②有序性:任意结点的关键字是其子树所有结点的最大值,叫最大堆(或最小值,叫最小堆)(注意从根结点到任意结点路径上结点序列的有序性)下面举一个最大堆的例子。
/** 最大堆的操作 */
typedef st...
分类:
编程语言 时间:
2015-02-17 22:21:37
阅读次数:
231
下面给出各种可以用户设置堆大小的命令行参数。注释列提供了一些设置参数的初级或高级建议。此外,后面还会给出更多的详细建议。参数描述注释-Xms设置堆的最小值在生产阶段,最小和最大堆值设置为相同的值-Xmx设置堆的最大值-XX:NewSize=设置年轻代的最小值在生产阶段,最小和最大年轻代的值设为相同的...
分类:
其他好文 时间:
2015-02-12 19:55:43
阅读次数:
169
寻找最小的k个数
题目描述:5.查找最小的k个元素
题目:输入n个整数,输出其中最小的k个。
例如输入1,2,3,4,5,6,7和8这8个数字,则最小的4个数字为1,2,3和4。
算法1:直接排序,找到最小的k个数
算法2:将数组a中的前k个数放到数组b中,在将a中后面n-k个数的值与b中最大的数比较,如果a中的数更小,将a中的这个数与b中的最大数交换,当然也可以将b建成一个最大堆
代...
分类:
其他好文 时间:
2015-02-11 12:47:44
阅读次数:
210