- 博客(7)
- 收藏
- 关注
原创 深入理解java虚拟机(二)
深入理解java虚拟机(二)对象创建类加载检查为新生对象分配内存分配方式:**指针碰撞**和**空闲列表**并发问题内存空间初始化为零值设置对象头执行构造器函数< init >对象的内存布局对象头(Mark Word和类型指针)Mark Word类型指针(非必需)实例数据对齐填充对象的访问定位使用句柄直接指针深入探讨Sun HotSpot虚拟机在java堆中对象创建、内存布局和访问定...
2019-02-20 22:36:10
134
原创 深入理解java虚拟机(一)
java内存区域概述运行时数据区域程序计数器虚拟机栈本地方法栈java堆方法区直接内存概述一个java程序编译和执行的流程如下:java编译器将java源代码文件(.java)编译为字节码文件(.class);然后由JVM中的类加载器加载各个类的字节码文件;加载完成后,由执行引擎执行。在程序执行过程中,需要运行时数据区(Runtime Data Area)提供数据,运行时数据区域也就...
2019-02-19 19:50:16
82
原创 开通CSDN博客遇到的问题(二)
开通CSDN博客遇到的问题(二)代码块颜色修改对比文字段颜色代码块颜色修改在编辑区域的、、、后添加java即可。对比public class Solution{ public static void main(String[] args){ System.out.println("Hello World"); }}public class Solution{ public ...
2019-02-18 19:50:47
118
原创 快速排序(三)
快速排序(三)随机快速排序算法区别代码随机快速排序算法区别经典快速排序选取数组第一个或者最后一个元素作为基准数,随机快速排序随机选取数组中的某一元素作为基准数。随机快速排序将复杂度转变为概率事件,不再依赖于输入,其长期期望事件复杂度为O(N*lgN),空间复杂度为O(lgN)。代码程序代码如下:public class Solution{ public static void ...
2019-02-18 19:34:34
116
原创 快速排序(二)
快速排序(二)经典快速排序性能分析经典快速排序经典快排以荷兰国旗问题为基础,每次以数组的最后一个数字作为基准数。快速排序采用了分治的策略,将原问题划分为若干个子问题,递归求解子问题,然后将这些子问题的解组合为原问题的解。程序代码如下:public class Solution{ public static void QkSort(int[] arr) { if (arr == nul...
2019-02-18 19:10:41
112
原创 快速排序(一)
快速排序(一)经典快速排序基础问题(partiton)荷兰国旗问题(partition升级)注意事项经典快速排序基础问题(partiton)给定一个数组arr,和一个数num,请把小于等于num的数放在数组的左边,大于num的数放在数组的右边。要求额外空间复杂度O(1),时间复杂度O(N)本题的解题思路如下:首先选定一个哨兵(指针)less指向数组的最左侧,作为小于等于区域的边界,...
2019-02-18 15:22:04
401
原创 开通CSDN博客遇到的问题(一)
开通CSDN博客遇到的问题(一)标题级别文本样式结束语标题级别1.#与标题名字之间要有空格才能有一级标题的效果;2.最多只有6级标题;文本样式1.标记、加粗、强调三种效果在一段文字中只能出现一种结束语今天开通CSDN博客暂时只遇到这么多问题,以后再补充。...
2019-02-15 10:57:57
100
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人