https://leetcode.com/problems/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.
Follow up:
What if the inputs contain unicode characters? How would you adapt your solution to such case?
public class Solution {
public boolean isAnagram(String s, String t) {
if(s.length() != t.length()) return false;
int[] occ = new int[26];
for(int i=0;i<s.length();i++){
occ[s.charAt(i)-'a']++;
}
for(int i=0;i<t.length();i++){
occ[t.charAt(i)-'a']--;
if(occ[t.charAt(i)-'a']<0) return false;
}
return true;
}
}
本文提供了一种方法来判断两个字符串是否互为字谜,即它们由相同的字符组成但排列不同。通过使用字符计数数组,我们可以在O(n)时间内解决此问题,其中n是字符串长度。
1035

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



