文章目录
所有题目源代码:[Git地址](https://github.com/ch98road/leetcode)题目方案:复杂度计算
所有题目源代码:Git地址
题目
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例
1:
输入
: s
= "anagram", t
= "nagaram"
输出
: true
示例
2:
输入
: s
= "rat", t
= "car"
输出
: false
说明
:
你可以假设字符串只包含小写字母。
进阶
:
如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?
方案:
class Solution {
public:
bool
isAnagram(string s
, string t
) {
int len
= s
.length();
vector
<int> v(26,0);
if (t
.length()!=len
)
{
return false;
}
for (int i
= 0; i
< len
; i
++)
{
v
[s
[i
]-'a']++;
v
[t
[i
]-'a']--;
}
for (int i
= 0; i
< 26; i
++)
{
if(v
[i
]!=0) return false;
}
return true;
}
};
复杂度计算
时间复杂度:O(n)空间复杂度:O(1)