关注
#include<stdio.h>
using namespace std;
int main(){
char s[]={'t','b','c','a','c','b','d','a','t','a'};
char t[]={'a','b','c','d'};
int s_len=10,t_len=4;
int res;
if(s_len<t_len){
res=-1;
printf("%d",res);
return 0;
}
//申请一个散列表,记录窗口中元素的情况
int hash[26]={0};
for(int i=0;i<t_len;++i){
++hash[t[i]-'a'];
}
int l=0,count=0;
for(int r=0;r<s_len;++r){
--hash[s[r]-'a'];
if(hash[s[r]-'a']>=0){ //s[r]处的字符在t中
++count;
}
//向右移动左指针
if(r>t_len-1) {
++hash[s[l]-'a'];
if (hash[s[l]-'a']>0) --count;
++l;
}
if(count==t_len && r-l+1==t_len){
res=l;
printf("%d",res);
return 0;
}
}
res=-1;//没有找到
printf("%d",res);
return 0;
}
查看原帖
1 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 设计人如何选offer #
98162次浏览 687人参与
# 找工作,行业重要还是岗位重要? #
7270次浏览 95人参与
# 五一之后,实习真的很难找吗? #
44980次浏览 318人参与
# 盲审过后你想做什么? #
12502次浏览 113人参与
# 外包能不能当跳板? #
22111次浏览 191人参与
# 领导秒批的请假话术 #
9768次浏览 74人参与
# 考研可以缓解求职焦虑吗 #
20762次浏览 244人参与
# 五一假期,你打算“躺”还是“卷”? #
27826次浏览 411人参与
# 找工作前vs找工作后的心路变化 #
7153次浏览 64人参与
# 面试等了一周没回复,还有戏吗 #
115363次浏览 1073人参与
# 硬件人,你被哪些公司给挂了 #
46583次浏览 722人参与
# 应届生薪资多少才合理? #
3075次浏览 24人参与
# 牛友们的论文几号送审 #
27195次浏览 623人参与
# 写简历别走弯路 #
714265次浏览 7850人参与
# 你喜欢工作还是上学 #
37482次浏览 409人参与
# 如果有时光机,你最想去到哪个年纪? #
43244次浏览 766人参与
# 如何缓解入职前的焦虑 #
171863次浏览 1267人参与
# 每人推荐一个小而美的高薪公司 #
72832次浏览 1357人参与
# 如果不工作真的会快乐吗 #
101062次浏览 866人参与
# 大疆的机械笔试比去年难吗 #
69580次浏览 603人参与