/** * * * Copyright 1994 JsonInternational * All rights reserved. - https://github.com/Jasonandy/Java-Core-Advanced * Created by Jason * * */ package ... ...
分类:
编程语言 时间:
2018-10-20 14:58:23
阅读次数:
180
1、最大堆的定义及其常用操作: 2、函数实现: 3、最大堆的建立 目的:将已经存在的N个元素按照最大堆的要求存放在一个一维数组中。 方法1:通过插入操作,将N个元素一个个相继插入到一个初始为空的堆中去,其时间代价最大为O(NlogN)。 方法2:在线性时间复杂度O(N)下建立最大堆。 (1) 将N个 ...
分类:
其他好文 时间:
2018-10-14 13:44:35
阅读次数:
325
堆:什么是堆?又该怎么理解呢? ①堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质: ·堆中某个节点的值总是不大于或不小于其父节点的值; ·堆总是一棵完全二叉树。 将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等。 ②堆是在程序运行时,而 ...
分类:
其他好文 时间:
2018-10-13 19:48:07
阅读次数:
149
堆空间是Java进程的重要组成部分,几乎所有的应用相关的内存空间都和堆有关。 1.最大堆和初始堆的设置 当Java程序启动时,虚拟机就会分配一块初始堆空间,使用参数 -Xms 指定这块空间的大小。一般来说,虚拟机尽可能维持初始堆空间的范围内运行。如果初始堆空间耗尽会进行扩展。最大堆空间使用参数 -X ...
分类:
编程语言 时间:
2018-10-09 18:14:30
阅读次数:
158
插入排序法: 简单介绍:插入排序在排序过程中会把整个数组分成已排好序和还未排序两部分。每次从未排序部分的开头取出一个数字,插入到已排序的部分。 性质:是稳定的排序法。且最坏的情况下一共要移动(1+2+...+N-1)=(N^2-N)/2次,所以基本是O(n^2)复杂度的排序法,当然输入数据的顺序可以 ...
分类:
编程语言 时间:
2018-08-17 23:30:04
阅读次数:
223
堆相关配置-Xmx最大堆空间-Xms初始堆空间大小,如果初始堆空间耗尽,JVM会对堆空间扩容,其扩展上限为最大堆空间。通常-Xms与-Xmx设置为同样大小,避免扩容造成性能损耗。-Xmn设置新生代大小,设置一个较大的新生代会减少老年代的大小,新生代的大小一般设置为整个堆空间的1/3 或者1/4。-X... ...
分类:
编程语言 时间:
2018-08-16 14:57:35
阅读次数:
163
非堆内存相关配置-XX:PermSize永久区初始大小-XX:MaxPermSize永久区最大大小 在JDK1.8中使用-XX:MxMetaspaceSize配置永久区最大大小-Xss线程栈大小-XX:MaxDirectMemorySize直接内存大小,默认为最大堆空间,即-Xmx。当直接内存使用量... ...
分类:
编程语言 时间:
2018-08-16 14:56:53
阅读次数:
188
一、堆大小设置 JVM 中最大堆大小有三方面限制: 1. 相关操作系统的数据模型(32-bt还是64-bit)限制; 2. 系统的可用虚拟内存限制; 3. 系统的可用物理内存限制。 32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Linux CentOS系统,JDK1.8.1 ...
分类:
其他好文 时间:
2018-08-16 13:46:52
阅读次数:
189
"链接" 一面 1 找一个无序数组的中位数 老题,方法有: 1. 先排序再定位 2. 最大堆和最小堆配合 3. 变体的快排 代码: c++ include include include include include include include include using namespace ...
分类:
其他好文 时间:
2018-08-16 13:33:28
阅读次数:
180
调优设置具体解析 堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。 在Windows Server 2003 系统,3.5G物理 ...
分类:
其他好文 时间:
2018-08-09 00:36:49
阅读次数:
174