您的位置:首页 > 其它

LeetCode (54) Valid Anagram

2015-09-23 19:42 183 查看

题目描述

Given two strings s and t, write a function to determine if t is an anagram of s.

For example,

s = “anagram”, t = “nagaram”, return true.

s = “rat”, t = “car”, return false.

Note:

You may assume the string contains only lowercase alphabets.

题目要求判断两个string是否具有相同的字母(包括字母出现的次数)。

解题思路

我们可以遍历字符串s,逐一判断s中的字母是否在t中,若在,则删除改字母。若t中查找不到该字母,则返回false;若s遍历完后t不为空,则也返回false,否则返回true。

class Solution {
public:
bool isAnagram(string s, string t) {
if(s.size() != t.size()) return false;
for(string::iterator it=s.begin(); it != s.end(); ++it)
{
int pos = t.find_first_of(*it);
if(pos == string::npos)
return false;
else
t.erase(pos, 1);
}
if(t.empty()) return true;
else return true;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: