数据结构与算法分析
文章平均质量分 87
JustYJQ
脚踏实地
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
排序
直接插入排序希尔排序简单选择排序堆排序冒泡排序快速排序归并排序基数排序以上8种都属于内部排序,也就是只考虑数据量较小仅需要使用内存的排序算法,他们之间关系如下:直接插入排序(Insertion Sort)1.基本思想直接插入排序的基本思想是:将数组中的所有元素依次跟前面已经排好的元素相比较,如果选择的元素比已排序的元素小,则交换,直到全部元素都比较过为止。2.算法描述与分析:取第一个元素构建有序序...原创 2018-03-08 14:30:51 · 204 阅读 · 0 评论 -
ArrayList
ArrayList简介 ArrayList核心代码分析 System.arraycopy()和Arrays.copyOf()方法 两者联系与区别 ArrayList扩容技术 自己实现ArrayList ArrayList简介 ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。在添加大量元素前,应用程序可以使用ensureCapac...原创 2018-08-22 09:37:03 · 209 阅读 · 0 评论 -
HashMap
HashMap 底层分析(基于jdk1.7) 如图所示,HashMap 底层是基于数组和链表实现的。其中有两个重要的参数: 容量 负载因子 容量的默认大小是 16(是为了降低hash碰撞的几率)参考,负载因子是 0.75,当 HashMap 的 size > 16*0.75 时就会发生扩容(容量和负载因子都可以自由调整)。 put 方法 首先会将传入的 Key 做 hash...原创 2018-08-26 17:46:26 · 173 阅读 · 0 评论
分享