438. 找到字符串中所有字母异位词

给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。
异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。下面的做法为什么不能通过呢?逻辑上没问题啊。
class Solution {
public:
    vector findAnagrams(string s, string p) {
        if(s.size()            return {};
        vector res;
        vectorhash_zeros(26,0);
        for(int i=0;i        {
            vector hash_map(26,0);
            for(int j=i;j            {
                hash_map[s[j]-'a']++;
                hash_map[p[j-i]-'a']--;
            }
            if(hash_map==hash_zeros)
                res.push_back(i);
        }
        return res;
    }
};
全部评论

相关推荐

头像
10-16 09:58
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
11-24 00:11
已编辑
广东工业大学 算法工程师
避雷深圳  yidao,试用期 6 个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务