关注
第一道题其实就是剑指offer中调整数组顺序使奇数位于偶数前变形题。 如果需要保证相对顺序不变的话,可以直接另开两个字符串空间,第一个字符串保存#,另一个字符串保存字母,最后将这两个字符串的和重新赋值给原先的字符串。 void string_shift2(string &s,int len)
{
if(s.empty()) return;
string s1,s2;
for(auto e:s)
{
if(e=='#') s1+=e;
else if(isalpha(e)) s2+=e;
}
s=s1+s2;
} 如果不需要保证相对顺序的话,可以维护两个指针。第一个指针指向字符串的第一个字符,它只向后移动,直到遇见字符为字母,第二个指针指向数组的最后一个字符,它只向前移动,直到遇到#。然后交换两个指针的内容,一直重复上述过程,直到两个指针相遇。 void string_shift(string &s,int len)
{
if(s.empty()) return;
int index1=0;
int index2=len-1;
while(index1<index2)
{
while(index1<index2&&!isalpha(s[index1]))
++index1;
while(index1<index2&&isalpha(s[index2]))
--index2;
if(index1<index2)
swap(s[index1],s[index2]);
}
}
查看原帖
点赞 2
相关推荐
07-09 13:51
门头沟学院 Java 还处在暑期实习上岸后的摆烂状态实习:杂活多,产出少,文档也没偷学多少八股:忘的差不多了项目:有实习就不会问玩具项目了吧力扣:我可以说我连hot 100都没刷完吗国企:从零开始准备论文:没着落
回收旧报纸:世另我,只是我比你更烂一些,没找到实习,你起码还有实习的,秋招猛猛冲,加油
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 实习生的蛐蛐区 #
56453次浏览 419人参与
# 运营面经 #
115830次浏览 1251人参与
# 你认为小厂实习有用吗? #
21552次浏览 254人参与
# 说说你知道的学历厂 #
40500次浏览 245人参与
# 应届生,你找到工作了吗 #
21743次浏览 154人参与
# 你的领导最像哪种动物,为什么? #
14570次浏览 107人参与
# 三一重工求职进展汇总 #
13501次浏览 62人参与
# 材料人,你们签了哪个公司 #
7551次浏览 18人参与
# 哪一瞬间觉得自己长大了 #
10451次浏览 233人参与
# 计算机有哪些岗位值得去? #
17395次浏览 161人参与
# 面试尴尬现场 #
33365次浏览 224人参与
# 你找工作的时候用AI吗? #
19367次浏览 236人参与
# 下班后的时间你怎么安排 #
10614次浏览 142人参与
# 烟草笔面经互助 #
17885次浏览 184人参与
# 硬件人秋招的第一个offer #
80241次浏览 1154人参与
# 社会教会你的第一课 #
37640次浏览 470人参与
# 秋招最大的收获是什么? #
36153次浏览 309人参与
# 电网笔面经互助 #
36958次浏览 359人参与
# 中核求职进展汇总 #
20801次浏览 153人参与
# lastday知无不言 #
58457次浏览 475人参与