Day11——哈希表专题 绝地灬酷狼 2024-04-03 13:40 62阅读 0赞 #### 文章目录 #### * * * 21.有效的字母异位词 * 22.两个数组的交集 -------------------- #### 21.有效的字母异位词 #### **思路**:定义一个数组叫做record用来上记录字符串里字符出现的次数,需要把字符映射到数组也就是哈希表的索引下标上,遍历s数组的字母个数执行++,遍历t数组的字母个数–,最后遍历26个字母,要是最后record数组中的元素全为0,说明两个串的字母完全一样,反之有问题。 **补充一个知识点:** charAt()是JAVA中常用的字符串方法,其作用返回一个字符串的指定位置的字符,索引是从[0,length-1].比如: str.charAt(0)检索str中的第一个字符,str.charAt(str.length()-1)检索最后一个字符 **代码实现:** class Solution { public boolean isAnagram(String s, String t) { if(s.length()!=t.length()){ return false; } int[] record = new int[26]; for(int i = 0;i<s.length();i++){ record[s.charAt(i) - 'a']++; record[t.charAt(i) - 'a']--; } for(int i = 0; i<26;i++){ if(record[i]!=0){ return false; } } return true; } } #### 22.两个数组的交集 #### **思路**: 先将`nums`1数组里边的元素放进`HashSe`t中,之后`HashSe`t判断包不包含`nums2`中的元素,如果包含就放到`resSe`t中,最终转化为数组输出 **代码实现:** class Solution{ public int[] intersection(int[] nums1, int[] nums2){ if(nums1 == null || nums1.length == 0 || nums2 == null || nums2.length == 0){ return new int[0]; } Set<Integer> set = new HashSet<>(); //用来存放遍历的第一个数组中的元素(无重复元素) Set<Integer> resSet = new HashSet<>(); //用来存放结果数组 for(int i : nums1){ set.add(i); } for(int i : nums2){ if(set.contains(i)){ resSet.add(i); } } return resSet.stream().mapToInt(x -> x).toArray();//将HashSet转化为数组输出 } }
相关 Day12——哈希表专题 文章目录 23.快乐数 24.两数之和 25.四数相加 -------------------- 23 - 日理万妓/ 2024年04月03日 14:19/ 0 赞/ 78 阅读
相关 Day11——哈希表专题 文章目录 21.有效的字母异位词 22.两个数组的交集 -------------------- 21.有效的字母异位词 绝地灬酷狼/ 2024年04月03日 13:40/ 0 赞/ 63 阅读
相关 Day13——哈希表专题 文章目录 26.赎金信 27.三数之和 28.四数之和 -------------------- 26 矫情吗;*/ 2024年04月01日 09:02/ 0 赞/ 59 阅读
相关 哈希值 哈希表_哈希杰森 哈希值 哈希表 我最近写了一个[简单的库,可预测地对json进行哈希处理][json] 。 该实用程序基于出色的[Jackson Json解析库][Jackson Json 阳光穿透心脏的1/2处/ 2023年02月25日 04:56/ 0 赞/ 30 阅读
相关 哈希表 ![Center][] [Center]: /images/20220731/1379dbdc6efb4a42a0b011f0b3aa4455.png 「爱情、让人受尽委屈。」/ 2022年08月14日 04:56/ 0 赞/ 217 阅读
相关 哈希表 什么是哈希表 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的[数据结构][Link 1]。也就是说,它通过把关键码 悠悠/ 2022年07月15日 12:14/ 0 赞/ 233 阅读
相关 哈希表 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速 系统管理员/ 2022年06月10日 01:26/ 0 赞/ 288 阅读
相关 哈希表 我们知道,通过对数组进行直接寻址(Direct Addressing),可以在 O(1) 时间内访问数组中的任意元素。所以,如果存储空间允许,可以提供一个数组,为每个可能的关键 快来打我*/ 2022年06月05日 02:20/ 0 赞/ 395 阅读
相关 哈希表 一、简介 如果所有的键都是小整数,那么我们可以用一个数组来实现无序的符号表,将键作为数组的索引i而数组中i(键)处储存的就是对应的值。 这样就可以快速地访问任意键的值, 旧城等待,/ 2021年12月22日 01:21/ 0 赞/ 439 阅读
相关 哈希表 【一】哈希表 > 他通过把关键码值映射到表中的一个位置来访问记录,以加快查找的速度。这个映射函数就是散列函数。 ![watermark_type_ZmFuZ3poZW5na 傷城~/ 2021年08月11日 17:13/ 0 赞/ 588 阅读
还没有评论,来说两句吧...