当前位置:网站首页>力扣.有效的字母异位词
力扣.有效的字母异位词
2022-07-31 05:17:00 【旺仔 小馒头】
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
思路
法一 :暴力的解法,两层for循环,同时还要记录字符是否重复出现,很明显时间复杂度是 O(n^2)。
法二:数组其实就是一个简单哈希表,而且这道题目中字符串只有小写字符,那么就可以定义一个数组,来记录字符串s里字符出现的次数。
因为字符a到字符z的ASCII也是26个连续的数值。所以不需要定义过大的数组,只要让遍历的每一个字符的ASCII码值减去a对应ASCII值即可,它们的结果仍然是26个连续的值,所以数组大小26即可
先遍历第一个串s,记录s串中每一个字符出现的次数,然后再遍历字符串t,将t中每一个出现的串,如果这个字符也是s中出现过得,就让对应的hash值减1,当最后全部遍历完后,判断hash数组中的所有元素是否全为0,如果是说明是异位词,不全为0,则不是。
代码如下:
class Solution {
public:
bool isAnagram(string s, string t) {
//需要把字符映射到数组也就是哈希表的索引下标上,因为字符a到字符z的ASCII是26个连续的数值,所以字符a映射为下标0,相应的字符z映射为下标25。
int hash_map[26] = {0};
for (auto ch : s){
hash_map[ch - 'a']++;
}
for (auto ch : t){
hash_map[ch - 'a']--;
}
for (auto e : hash_map){
if(e!=0)
return false;
}
return true;
}
};相关题目:
边栏推荐
- Shell/Vim related list
- ImportError: cannot import name ‘Xxxx‘ from partially initialized module ‘xx.xx.xx‘
- CLS-PEG-FITC Fluorescein-PEG-CLS 胆固醇-聚乙二醇-荧光素简介
- cv2.resize()是反的
- DSPE-PEG-Biotin,CAS:385437-57-0,磷脂-聚乙二醇-生物素可延长循环半衰期
- VS2019配置配置项目属性自定义输出目录与中间目录
- PyTorch学习笔记08——加载数据集
- Rejection sampling note
- 概率论相关笔记
- CAS:474922-22-0 Maleimide-PEG-DSPE 磷脂-聚乙二醇-马来酰亚胺简述
猜你喜欢

mPEG-DMPE 甲氧基-聚乙二醇-双肉豆蔻磷脂酰乙醇胺用于形成隐形脂质体

IDEA概述和安装及调试
![[Solved] ssh connection report: Bad owner or permissions on C:\\Users/XXX/.ssh/config](/img/53/8b5a12e7ed551dca52ada5dbb5d6b5.png)
[Solved] ssh connection report: Bad owner or permissions on C:\\Users/XXX/.ssh/config

十分钟教你玩转分支语句!!!!!小白速进,新手福利!!

Remote file xxx is mapped to the local path xxx and can't be found. You can continue debugging....

Cholesterol-PEG-NHS NHS-PEG-CLS cholesterol-polyethylene glycol-active ester can modify small molecular materials

Cholesterol-PEG-Amine CLS-PEG-NH2 胆固醇-聚乙二醇-氨基科研用

【Rhapsody学习笔记】4:Relations

DSPE-PEG-COOH CAS: 1403744-37-5 Phospholipid-polyethylene glycol-carboxy lipid PEG conjugate

IDEA控制台不能输入信息的解决方法
随机推荐
cocos2d-x-3.2 create project method
我的训练函数模板(动态修改学习率、参数初始化、优化器选择)
Cholesterol-PEG-DBCO 胆固醇-聚乙二醇-二苯基环辛炔化学试剂
opencv之图像二值化处理
Image binarization processing of opencv
Evaluating Machine Learning Models - Excerpt
wangeditor编辑器内容传至后台服务器存储
PyTorch学习笔记08——加载数据集
IDEA控制台不能输入信息的解决方法
二进制转换成十六进制、位运算、结构体
Solution for MySQL The table is full
机器学习和深度学习概述
Shell/Vim related list
CAS:474922-22-0 Maleimide-PEG-DSPE 磷脂-聚乙二醇-马来酰亚胺简述
变分自编码器VAE实现MNIST数据集生成by Pytorch
Attention based ASR(LAS)
关于Iframe
Getting Started with MySQL: The Case Statement Works Well
Numpy常用函数
The solution to the IDEA console not being able to enter information