Q:HashMap 的工作原理? A:HashMap 底层是 hash 数组和单向链表实现,数组中的每个元素都是链表,由 Node 内部类(实现 Map.Entry<K,V>接口)实现,HashMap 通过 put & get 方法存储和获取。 存储对象时,将 K/V 键值传给 put() 方法:① ...
分类:
其他好文 时间:
2020-03-16 19:02:02
阅读次数:
78
分治策略 1)将问题分解为规模较小的子问题,子问题与原问题同质 2)迭代或者递归解决每个子问题 3)将子问题的解综合得到原问题解 例子:二分查找Binary Search 1 BinarySearch(T,l,r,x) 2 //输入数组T,下标从l到r,查找数x 3 //输出j,若x在T中输出下标, ...
分类:
编程语言 时间:
2020-03-16 13:17:50
阅读次数:
61
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 num ...
分类:
其他好文 时间:
2020-03-13 01:43:15
阅读次数:
68
数组 数组是可以再内存中连续存储多个元素的结构,在内存中的分配是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。 优点:1、按照索引查询元素速度快2、按照索引遍历数组方便 缺点:1、数组的大小固定后就无法扩容了2、数组只能存储一种类型的数据3、添加,删除的操作慢,因为要移动其他的元素。 ...
分类:
其他好文 时间:
2020-03-11 11:08:56
阅读次数:
46
1. 下标越界异常 2. 空指针异常 public class TestException { public static void main(String[] args) { // 数组下标越界异常:java.lang.ArrayIndexOutOfBoundsException: 10 int[ ...
分类:
编程语言 时间:
2020-03-11 10:23:48
阅读次数:
68
1. 两数之和 给定一个整数数组 和一个目标值 ,请你在该数组中找出和为目标值的那 __两个__ 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 题解: 以后学会更好的解法在更新。 ...
分类:
其他好文 时间:
2020-03-10 11:34:23
阅读次数:
50
冒泡排序的基本思想是: 1.在长度为n的数组,通过不断比较两个相邻元素,把值大的往后移动,当遍历完最后一个元素时,最大值存放在数组[n-1]下标位置。 2.通过步骤1的比较后,数组长度为n-1(因为arr[n-1]的元素已是整个数组最大的,没必要再比较),然后再在长n-1的数组中找出次大的数放到 a ...
分类:
编程语言 时间:
2020-03-07 19:01:29
阅读次数:
65
3w的原则: 哪都有的3W原则,JAVA异常也可以总结3W:what、where、why what对应异常类型:回答了什么被抛出where对应异常堆栈跟踪:回答了在哪抛出why对应异常信息:回答了为什么被抛出 异常体系 Error和Exception是他的子类。Exception又分RuntimeE ...
分类:
编程语言 时间:
2020-03-05 13:12:24
阅读次数:
74
操作方法 1. concat() 拼接数组 使用此方法可以拼接元素,并组成新数组,结果返回新数组的副本。(不会影响原数组) 2. slice(start, end) 切片(截取片段) 使用此方法可以截取数组元素,可以传入一个参数或两个参数。参数表示数组下标索引。(不会影响原数组) 传入一个参数表示, ...
分类:
编程语言 时间:
2020-03-04 23:26:15
阅读次数:
76
学习要点 JavaScript核心语法 JavaScript程序调试 JavaScript函数 为什么学习JavaScript 应用场景 嵌入动态文本于HTML页面,对浏览器事件做出响应。 读写HTML元素。 在数据被提交到服务器之前验证数据。 检测访客的浏览器信息。 控制cookies,包括创建和 ...
分类:
编程语言 时间:
2020-03-02 22:37:53
阅读次数:
114