移动到末尾(蓝桥杯)

复制代码
#include <stdio.h>
#include <stdlib.h>

#define N 1000   //双指针思想
int main(int argc, char *argv[])
{
  int n;
  int s[N];
  scanf("%d",&n);
  for(int i = 0 ; i < n ; i++)
    scanf("%d",&s[i]);
  int j = 0;              
  for(int i = 0 ; i < n ; i++) 
  {
     if(s[i] != 0 )    
      {
        int t = s[j];
          s[j++] = s[i];
          s[i] = t;
      }
  }
  for(int i = 0 ; i < n ; i++)
   printf("%d ",s[i]);
  return 0;
}
相关推荐
大白话_NOI6 分钟前
【洛谷 P2249】查找(深基 13. 例 1)+ 详细分析
c++·算法
吠品7 分钟前
C++实现m行n列带边框的长方形输出
算法
智者知已应修善业14 分钟前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机
西安邮电大学1 小时前
分治算法详细讲解
java·后端·其他·算法·面试
code bean1 小时前
平衡相关性与多样性:推荐系统中的永恒博弈与 MMR 算法详解
算法
青梅橘子皮1 小时前
Linux---进程控制(2)(进程程序替换)
linux·c++·算法
Shan12051 小时前
经典问题——验证栈序列
数据结构·算法
2501_906565121 小时前
勾股定理证明
算法
Shan12052 小时前
无向图的Hierholzer算法流程(二)
算法
gihigo19982 小时前
基于蒙特卡洛的异常值剔除(RANSAC + MC置信区间)—MATLAB实现
开发语言·算法·matlab