- 博客(5)
- 收藏
- 关注
原创 Java学习笔记之集合:HashMap
1.Map用于存储key-value对的数据,其有HashMap、TreeMap等实现类,而HashMapyou'y 2.HashMap:
2021-06-28 17:28:44
108
原创 Java数据结构与算法学习笔记(2)——二分查找
1.二分查找使用的前提是数组有序(也有例外,如旋转数组)。 2.二分查找的思想:将数组分为左右两部分,看要查找的目标位于哪一边,就对这部分再进行左右划分,如此重复不断逼近目标,直至找到目标数。 3.二分查找的具体过程:以递增数组(称为numbers)为例,取数组的左边界(left)和右边界(right),从而获取中间的数(mid),将要查找的目标(target)与中间的数进行比较,若target>numbers[mid],则以中间数为新的左边界(left = mid+1);若target&l...
2021-05-12 17:12:42
80
原创 Java学习笔记之ArrayList的扩容
1. Java集合中的ArrayList其底层实际上是一个Object类的数组,因此在数组容量不足时,其实是通过对数组扩容来实现扩展的。 2.打开ArrayList类的源码,我们可以找到grow方法: private Object[] grow(int minCapacity) { int oldCapacity = elementData.length; if (oldCapacity > 0 || elementData != DEFAULTCAPACITY_
2021-05-07 16:06:24
279
原创 Java数据结构与算法学习笔记(1):哈希表
自己在学Java,索性写在CSDN上,既有助于自己梳理知识,也方便以后翻阅。 1.哈希表是一种数据结构,其由数组+链表或数组+二叉树构成。哈希表最大的特征是利用散列函数将关键码值进行映射,并根据关键码值进行直接访问。利用哈希表可以极大提高查找速度。 2. 哈希表的具体结构: 以数组+链表为例,哈希表包含一个由链表构成的数组,数组中每个元素是一条链表的头节点,如下图所示 3.散列函数:散列函数是哈希表的关键,通过散列函数才能快速确定要查找的值位于哪一条链表。散列函数有很多种,目前只学了简单的...
2021-05-06 21:07:15
81
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人