数组就是一张哈希表
哈希表用于解决什么问题?
一般哈希表都是用来快速判断一个元素是否出现集合里。
哈希函数
映射为哈希表上的索引,然后可以通过查询索引下标快速知道
哈希碰撞
就是映射下标相同
解决方法:
- 拉链法
- 线性探测法:一定要保证tableSize大于dataSize
Set,Map,List的区别
toCharArray()
将字符串对象中的字符转换为一个字符数组。
charAt()
有些题可以从这些方面考虑:第一个的加一,第二个如有和第一个一样的就减一,看结果是否等于0
- 数组的大小是受限的,使用数组做哈希表
- 没有限制数值的大小,使用set做哈希表
- 数组的大小是受限制的,set是一个集合,里面放的元素只能是一个key,需要两个元素的时候,map作为哈希表
StringBuilder
比直接字符串相加效率高