哈希表利用空间换时间
当我们要快速判断一个元素是否出现在集合里的时候,就需要考虑哈希表。
哈希表一般会选择三种数据结构,分别是:数组、set(集合)、map(映射)。
数组就是简单的哈希表,但是其大小不能无限开辟
优先使用unordered_set(因为其查找和增删效率最优);若需要集合有序,则用set;若不仅要有序还可以重复,则用multiset。
map是key value的数据结构,它对key有限制,对value没有限制。
有效的字母异位词
利用最简单的哈希表--数组进行对个数进行统计,所以要创建一个新数组,数组的下标值就是对应的ASCII码相对值
最后统计新数组中的值判断t是否是s的字母异位词。
补充java语法
因为是在堆中,所以new的时候jvm会自动给数组赋值。
1、int类型定义的数组,初始化默认是0
2、String类型定义的数组,默认值是null
3、char类型定义的数组,默认值是0对应的字符
4、double类型定义的数组,默认值是0.0
5、float类型定义的数组,默认值是0.0
6、boolean类型定义的数组,默认值是false
标签:set,哈希,--,类型定义,算法,数组,默认值 From: https://www.cnblogs.com/jcxcoder/p/17894026.html