leetcode 242. Valid Anagram
题目
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.
解
public class Solution {
public boolean isAnagram(String s, String t) {
char[] ss=s.toCharArray();
char[] tt=t.toCharArray();
int[] count_s=new int[26];
int[] count_t=new int[26];
for(int i=0;i<ss.length;i++){
//count_s[i]=0;//java自动初始化为0;
count_s[ss[i]-97]++;
}
for(int j=0;j<tt.length;j++){
count_t[tt[j]-97]++;
}
for(int k=0;k<26;k++){
if(count_s[k]!=count_t[k]){
return false;
}
}
return true;
}
}
小结
1,string转成char[],函数是toCharArray();
2,数组的长度是length;
3,a的ASCII码是97。
本文介绍了如何通过比较两个字符串字符出现次数来判断它们是否构成字母异位词的方法。使用了两个长度为26的数组分别记录每个字符出现的次数,最终比较两个数组是否相同来确定答案。
650

被折叠的 条评论
为什么被折叠?



