自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (4)
  • 收藏
  • 关注

原创 第八章 虚拟机字节码执行引擎

1.栈帧栈帧用于支持虚拟机进行方法调用和方法执行的数据结构,栈帧存储了方法的局部变量表、操作数栈、动态链接、和方法返回地址信息。1.1 局部变量表用于存储方法参数和方法内部定义的局部变量。 局部变量表的大小在方法的Code属性中就已经定义好了,为max_locals的值。对于实例方法而言,索引为0的slot存放的是this引用,之后再依次存放方法参数,定义的局部变量;slot可以被重用,当局部变量已

2016-03-25 14:24:45 459

原创 第七章 虚拟机类加载机制

1.虚拟机类加载机制把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型。2.类加载时机虚拟机规范规定了有且只有5种情况必须立即对类进行“初始化”。2.1:遇到new、getstatic、putstatic、或invokestatic这4条字节码指令时,如果没有类进行过初始化,则需要先触发其初始化。生成这4条指令常见的场景:使用ne

2016-03-24 18:51:21 333

原创 第六章 类文件结构

Class类文件结构Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按照顺序紧凑地排列在Class文件之中,中间没有添加任何分隔符。Class文件格式采用一种类似C语言结构体的伪结构体存储两种数据类型:无符号数、表。表是由多个无符号数或者其他表作为数据项构成的复合数据类型,所有表习惯以“_info”结尾。Class文件格式1.魔数(magic)每个Class文件的头4个文件称为魔

2016-03-23 10:56:37 352

原创 第三章 垃圾收集器与内存分配策略

垃圾对象判定1.引用计数算法给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加 1,当引用失效时,计数器值就减1,任何时刻计数器都为 0 的对象就是不可能再被使用的。引用计数算法的实现简单,判定效率也很高,在大部分情况下它都是一个不错的选择,当 Java 语言并没有选择这种算法来进行垃圾回收,主要原因是它很难解决对象之间的相互循环引用问题。2.可达性分析算法这种算法的基本思路是通过一系列

2016-03-22 18:57:16 373

原创 第二章 Java内存区域与内存溢出异常

Java 虚拟机规范将 JVM 所管理的内存分为以下几个运行时数据区:程序计数器、Java 虚拟机栈、本地方法栈、Java 堆、方法区。 程序计数器一块较小的内存空间,它是当前线程所执行的字节码的行号指示器,字节码解释器工作时通过改变该计数器的值来选择下一条需要执行的字节码指令,分支、跳转、循环等基础功能都要依赖它来实现。每条线程都有一个独立的的程序计数器,各线程间的计数器互不影响,因此该区域是线

2016-03-21 13:10:56 339

原创 快速排序

算法思想1.分解: 在 R[low..high]中任选一个记录作为基准(Pivot),以此基准将当前无序区划分为左、右两个较小的子区间 R[low..pivotpos-1)和 R[pivotpos+1..high],并使左边子区间中所有记录的关键字均小于等于基准记录(不妨记为 pivot)的关键字 pivot.key,右边的子区间中所有记录的关键字均大于等于 pivot.key,而基准记录 piv

2016-03-20 20:02:34 331

原创 希尔排序

“基本思想: 先取一个小于 n 的整数 d1 作为第一个增量,把文件的全部记录分成 d1 个组。所有距离为 d1 的倍数的记录放在同一个组中。先在各组内进行直接插人排序;然后,取第二个增量 d2 < d1 重复上述的分组和排序,直至所取的增量 dt=1(dt < dt-1 < … < d2 < d1),即所有记录放在同一组中进行直接插入排序为止。”时间复杂度O(Nlog2N)void shellS

2016-03-20 19:00:51 279

原创 直接插入排序

“1.基本思想 假设待排序的记录存放在数组 R[1..n]中。初始时,R[1]自成 1 个有序区,无序区为 R[2..n]。从 i=2 起直至 i=n 为止,依次将 R[i] 插入当前的有序区 R[1..i-1] 中,生成含 n 个记录的有序区。2.第 i-1 趟直接插入排序 通常将一个记录 R[i][i=2,3,…,n-1]插入到当前的有序区,使得插入后仍保证该区间里的记录是按关键字有序的操作

2016-03-20 18:23:36 299

原创 冒泡排序

临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, 这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束。时间复杂度O(n^2)int bubble_sort(int arr[], int lenght) { int flag = 1;//标记一次遍历没有发生移位,排序完毕 if (arr == NULL || len

2016-03-20 16:02:59 318

原创 二分查找

有序数组,查找某个数据,二分法,时间复杂度O(log2n)int binary_sort(int arr[], int lenght, int value) { if (arr == NULL || lenght == 0) { return -1; } int start =0; int end = lenght -1; while(

2016-03-20 15:34:12 279

原创 网易笔试题编程题--小易的升级之路

小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3…bn. 如果遇到的怪物防御力bi小于等于小易的当前能力值c,那么他就能轻松打败怪物,并 且使得自己的能力值增加bi;如果bi大于c,那他也能打败怪物,但他的能力值只能增加bi 与c的最大公约数.那么问题来了,在一系列的锻炼后,小易的最

2016-03-20 00:21:04 1455

仿WIN8磁帖效果的ImageView

一个仿WIN8磁帖效果的ImageView

2014-07-29

Android例子源码使用ActionBar的高仿微信主界面设计

Android例子源码使用ActionBar的高仿微信主界面设计.

2014-07-29

操作系统实验 线程同步机制

实现Nachos的同步机制:锁和条件变量,并利用这些同步机制实现几个基础工具类

2013-07-13

计算机端口TCPIP详细介绍

TCPIP...............................................................................................

2011-04-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除