快慢指针法 设置两个指针fast和slow,都指向头节点,一个一次移动两次,一个一次移动一次,如果,有一个时刻,他们两个相遇了,或者fast的n...
HashMap HashMap是以键值对进行存储的集合,其中键值是唯一的,HashMap是无序的。 改变 1.7版本的HashMap使用的数组+...
ArrayList ArrayList集合是我们平时使用相当多的集合了,本文是我学习ArrayList的源码,对于ArrayList源码相关方法...
邻接表 相比邻接矩阵,邻接表要更加节省空间。 邻接表存储 本文将介绍邻接表存储有向带权图。图的例子如下。 介绍一下邻接表上面的图对应的邻接表如下...
基数排序 基本思想:对元素分别按照个位、十位、百位....N位进行排序。 具体步骤如下 1.待排序算组array 2.创建一个10行*array...
计数排序 基本思想:不通过比较,计下每个元素的出现次数,统计小于这个元素的个数N,将其放在N位。例如{7,6,2,4,2,3}这个序列,有5个小...
归并排序 思路:使用分治思想,将数组一直拆分,直到拆分成一个元素,此时每一个元素都相当于一个有序的数组,之后再将每两个数组合并成一个有序数组,一...
希尔排序 概括:其实希尔排序就是将数组进行拆分,对分出来的每一个数组进行直接插入排序。 具体讲解 设置一个step(步长),step初始值为数组...
快速排序算法 思路:选择基准数,将所有小于基准数的移动到基准数的左边,大于的移动到右边,之后采用分治思想,递归调用。 步骤如下: 首先,需要一个...