原题链接:Leetcode 242. Valid Anagram
Given two strings s
and t
, return true
if t is an anagram of s, and false
otherwise.
An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.
Example 1:
Input: s = "anagram", t = "nagaram"
Output: true
Example 2:
Input: s = "rat", t = "car"
Output: false
Constraints:
Follow up:
What if the inputs contain Unicode characters? How would you adapt your solution to such a case?
题目中要判断两个字符串时候是由相同种类和数目的字符按照不同的顺序组成的。
那么只需要判断两个排序之后的字符串是否相等即可。
首先判断长度是可以提前退出。
class Solution {
public:
bool isAnagram(string s, string t) {
if(s.size() != t.size())
return false;
sort(s.begin(), s.end());
sort(t.begin(), t.end());
return s == t;
}
};