242. 有效的字母异位词


给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。

注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

   示例 1:

    输入: s = "anagram", t = "nagaram"
    输出: true
  示例 2:

    输入: s = "rat", t = "car"
    输出: false

=========================================================

时间复杂度为O(n)空间复杂度为O(1),在力扣中运行却很慢,很疑惑

class Solution {
public:
    bool isAnagram(string s, string t) {
        if (s.size() >= t.size())
            for (int i = 0; i < s.size(); i++) {
                if (t.find(s[i]) > t.size())
                    return false;
                    t[t.find(s[i])] = ' ';
            }
        else
            for (int i = 0; i < t.size(); i++) {
                if (s.find(t[i]) > s.size())
                    return false;
                s[s.find(t[i])] = ' ';
            }
        return true;
    }
};

相关