您的位置:首页 > 其它

两个字符串是变位词

2015-05-05 23:53 183 查看
写出一个函数
anagram(s,
t)
去判断两个字符串是否是颠倒字母顺序构成的

样例

给出 s=
"abcd"
,t=
"dcab"
,返回
true


python:先排序后比较

class Solution:
"""
@param s: The first string
@param b: The second string
@return true or false
"""
def anagram(self, s, t):
# write your code here

s = "".join((lambda x:(x.sort(),x)[1])(list(s)))
t = "".join((lambda y:(y.sort(),y)[1])(list(t)))
if s == t:
return True
else:
return False


c++:用了哈希思想

class Solution {
public:
/**
* @param s: The first string
* @param b: The second string
* @return true or false
*/
bool anagram(string s, string t) {
// write your code here
if (s.length() != t.length()) {
return false;
}
int length = s.length();
int a[128]={0};
int b[128]={0};
for(int i = 0; i < length; i++) {
int a1 = s[i];
int b1 = t[i];
a[a1]++;
b[b1]++;
}
for(int i =0; i < 128; i++) {
if (a[i] != b[i])
return false;
}
return true;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: