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

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

相关推荐

11-19 09:45
已编辑
门头沟学院 Java
bg:2本9硕,第一段实习胆小🐭未投递bat整体timeline:10.9开始投递&nbsp;除jdy外&nbsp;10.23都已经结束美团(数据平台部)一面&nbsp;二面&nbsp;oc蚂蚁(Oceanbase某边缘部门)一面&nbsp;二面拒绝(脑子进水了)快手(大模型应用开发)一面挂虾皮&nbsp;(保险那边业务)一面&nbsp;二面挂京东jdy(京东科技)一面&nbsp;二面&nbsp;三面&nbsp;oc百度(用增后端)一面挂b站&nbsp;(cicd流水线)一面挂滴滴&nbsp;(mpt引擎架构)一面过&nbsp;二面oc面试一些更具体部门或者业务,这里就不展开了,有感兴趣的同学可以私聊面经~一点感想:1.越来越卷了,认识了很多27届的小伙伴现在已经2-3段实习了2.大模型应用开发是趋势,在你学历以及简历深度到位的基础上,了解甚至熟悉大模型应用开发的东西会帮助你脱颖而出,最少能多很多面试(实测),但是也存在一个小风险:简历靠大模型吸引来的,可能一般也只是组里应上面okr要求要做agent,招你进去随便做一个,成长性堪忧,但是总比啥都不做好。3.自己做的项目,不管是点评还是什么其他各种秒杀&nbsp;电商等,可以想办法多体现一些与众不同,面试官们真看腻了,他们都能给你全文背诵你简历的描述,最重要的在于项目复杂度,一定新颖程度描述到位的基础上,多结合个人的思考,没接触的场景或者问题,玩命调动自己做项目的过程经验以及结合一定八股来回答,在面试官那边印象不会差的4.算法这块,感觉绝大部分厂不会太为难,我手撕十多道的经验上来看,没有超出hot100及其简单变式,不用太担心5.最重要的还是运气,运气面前一切实力高低与否都显得很渺小而运气又和投递时期挂钩,短时间内如果没有面试或者面试结果不尽人意,不用着急,可以继续投递的同时一边优化简历和熟悉八股算法,没准哪天某大厂缺人就一面速通你了,幸福往往就在一瞬间~祝大家都能找到自己满意的实习~也欢迎同一届的后端小伙伴们一起多多交流
发面经攒人品
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务