当前位置: 首页> 文旅> 酒店 > 【算法】代码随想录之哈希表(更新中)

【算法】代码随想录之哈希表(更新中)

时间:2025/7/12 19:34:47来源:https://blog.csdn.net/weixin_46249470/article/details/140477857 浏览次数:0次

文章目录

前言

一、有效的字母异位词(LeetCode--242)

二、两个数组的交集(LeetCode--349)


前言

跟随代码随想录,学习哈希表相关的算法题目,记录学习过程中的tips。


一、有效的字母异位词(LeetCode--242)

【1】题目描述:

【2】解决思想:哈希表中记录每个字母的个数。遍历s字符串,遇到一个字母就使哈希表对应位置+1。遍历t字符串,遇到一个字母就使哈希表对应位置-1。最后,遍历哈希表,若存在不等于0的元素则返回false。

【3】C++代码:

class Solution {
public:bool isAnagram(string s, string t) {int hash[26] = {0};for (int i = 0; i < s.length(); ++i) {++hash[s[i] - 'a'];}for (int i = 0; i < t.length(); ++i) {--hash[t[i] - 'a'];}for (int i = 0; i < 26; ++i) {cout << hash[i] << endl;if(hash[i] != 0)return false;}return true;}
};

【4】时间复杂度:O(N),对于每个字符串只遍历了一次。

【5】空间复杂度:O(26),开辟了额外存储26个字母个数的数组。


二、两个数组的交集(LeetCode--349)

关键字:【算法】代码随想录之哈希表(更新中)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: