关注
把0放到数组尾部应该是双指针,一个头一个尾同时往中间走,如果a[i] == 0 并且a[j] != 0 就交换 如果前面等于0后面也等于0,j--,如果前面不等于0,无论后面值为多少,前面的i就++ #include<iostream>
using namespace std;
const int N = 100010;
int a[N];
int main(){
int n;
cin >> n;
for(int i = 0;i < n;i++ )
cin >> a[i];
int i = 0,j = n - 1;
while(i < j){
if(a[i] == 0){
if(a[j] != 0){
swap(a[i],a[j]);
i++;
j--;
}
if(a[j] == 0)
j--;
}
if(a[i] != 0) i++;
}
for(int i = 0;i < n;i++ )cout << a[i] << " ";
}
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
172745次浏览 2921人参与
# 找工作,行业重要还是岗位重要? #
85309次浏览 1688人参与
# 职场上哪些行为很加分? #
306901次浏览 3452人参与
# 大家每天通勤多久? #
69790次浏览 442人参与
# 实习的内耗时刻 #
211171次浏览 1539人参与
# 你面试体验感最差/最好的公司 #
17732次浏览 292人参与
# 一人说一个提前实习的好处 #
10684次浏览 204人参与
# 今年你最想重开的一场面试是? #
4062次浏览 69人参与
# 秋招落幕,你是He or Be #
12063次浏览 238人参与
# 互联网行业现在还值得去吗 #
46910次浏览 351人参与
# 实习没事做是福还是祸? #
16714次浏览 255人参与
# 面试吐槽bot #
164998次浏览 814人参与
# 重来一次,你会对开始求职的自己说 #
6042次浏览 154人参与
# 反问环节如何提问 #
126370次浏览 2663人参与
# 礼物开箱Plog #
675次浏览 24人参与
# 工作中听到最受打击的一句话 #
6583次浏览 113人参与
# 团建是“福利”还是是 “渡劫” #
7159次浏览 150人参与
# 我的第一份实习怎么找的 #
208543次浏览 1827人参与
# 比亚迪工作体验 #
74701次浏览 281人参与
# 大家实习每天都在干啥 #
106524次浏览 581人参与
