java与数据结构和算法相关源代码
2012-10-08 23:16
232 查看
刚刚看了一下java源代码与数据结构和算法相关的部分,一个是arraylist和数据储存相关,一个是collections.sort排序方法和排序算法相关。
1. Arraylist的底层实现其实就是数组,针对数组进行add和remove操作。需要关注的就是Arraylist能够自己扩充容量当数据的个数到达当前最大的范围。
int newCapacity = (oldCapacity * 3)/2 + 1;//增加容量为1.5倍加1
2. Collections.sort的底层实现也是为数组排序,先从数组第二个数据和第一个数据比较,如果小的话,就交换位置;然后从数组的第三个数据和第二个数据比较,然后再和第一个数据进行比较;依次类推,一直比较到最后一个数据。需要注意的是如果数据的个数大于7的时候,会一半一半的进行递归排序。然后调整这两半的数据的顺序。
本文出自 “家族荣誉” 博客,请务必保留此出处http://sangao.blog.51cto.com/4105989/1018236
1. Arraylist的底层实现其实就是数组,针对数组进行add和remove操作。需要关注的就是Arraylist能够自己扩充容量当数据的个数到达当前最大的范围。
int newCapacity = (oldCapacity * 3)/2 + 1;//增加容量为1.5倍加1
2. Collections.sort的底层实现也是为数组排序,先从数组第二个数据和第一个数据比较,如果小的话,就交换位置;然后从数组的第三个数据和第二个数据比较,然后再和第一个数据进行比较;依次类推,一直比较到最后一个数据。需要注意的是如果数据的个数大于7的时候,会一半一半的进行递归排序。然后调整这两半的数据的顺序。
本文出自 “家族荣誉” 博客,请务必保留此出处http://sangao.blog.51cto.com/4105989/1018236
相关文章推荐
- 【算法数据结构Java实现】递归的简单剖析及时间复杂度计算
- 共同学习Java源代码-数据结构-HashMap(十四)
- 数据结构-顺序表相关算法
- Java经典算法编程(素数相关)
- DES加密算法java实现(核心算法+源代码)
- Java编程中快速排序算法的实现及相关算法优化
- 【数据结构和算法】用java简单的实现单链表的基本操作
- 数据结构与算法—常用数据结构及其Java实现
- 共同学习Java源代码-数据结构-HashSet(一)
- 共同学习Java源代码--数据结构--LinkedList类(七)
- 数据结构 顺序查找(算法思想和源代码)
- 一步步学习数据结构和算法之冒泡排序效率分析及java实现
- 编程中最没用的东西是源代码,最有用的东西是算法和数据结构。
- 一步步学习数据结构和算法之归并排序效率分析及java实现
- 【数据结构&&等差数列】KMP简介和算法的实现(c++ && java)
- 共同学习Java源代码-数据结构-AbstractMap抽象类(四)
- 数据结构(四)java模拟计算器四则运算算法
- 共同学习Java源代码-数据结构-HashMap(一)
- 数据结构和算法学习第3天:队列的相关知识
- 数据结构 --- Java数据结构与算法总览