zoukankan      html  css  js  c++  java
  • 算法训练 删除数组零元素

    算法训练 删除数组零元素  
    时间限制:1.0s   内存限制:512.0MB
       
    从键盘读入n个整数放入数组中,编写函数CompactIntegers,删除数组中所有值为0的元素,其后元素向数组首端移动。注意,CompactIntegers函数需要接受数组及其元素个数作为参数,函数返回值应为删除操作执行后数组的新元素个数。输出删除后数组中元素的个数并依次输出数组元素。
    
    样例输入: (输入格式说明:5为输入数据的个数,3 4 0 0 2 是以空格隔开的5个整数)
    5 
    3 4 0 0 2
    样例输出:(输出格式说明:3为非零数据的个数,3 4 2 是以空格隔开的3个非零整数)
    3
    3 4 2
    
    样例输入: 
    7
    0 0 7 0 0 9 0
    样例输出:
    2
    7 9
    
    样例输入: 
    3
    0 0 0
    样例输出:
    0
    


    代码:

    #include<iostream>
    #include<string>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int CompactIntegers(int p[], int n)
    {
        int number;
        for(int i=0;i<n;i++)
        {
            if(p[i]!=0)
                number++;
        }
        printf("%d
    ",number);
        if(number==0)
        {
            ;
        }
        else if(number==1)
        {
            for(int i=0;i<n;i++)
            {
                if(p[i]!=0)
                {
                    printf("%d
    ",p[i]);
                    break;
                }
            }
        }
        else
        {
            int flag=0;
            for(int i=0;i<n;i++)
            {
                if(p[i]!=0)
                {
                    if(!flag)
                    {
                        printf("%d",p[i]);
                        flag=1;
                    }
                    else
                    {
                        printf(" %d",p[i]);
                    }
                }
            }
            printf("
    ");
        }
        return number;
    }
    int main()
    {
        int n,*p;
        scanf("%d",&n);
        p=new int[n];
        for(int i=0;i<n;i++)
        {
            scanf("%d",&p[i]);
        }
        CompactIntegers(p,n);
        return 0;
    }
    


  • 相关阅读:
    ElasticSearch记录(1)底层原理
    hbase学习记录(4)hbase和Hadoop整合(实现wrodcount程序)
    flume记录(2)监控文件和目录,对hdfs操作
    flume记录(1)使用
    hbase学习记录(3)JAVA_API操作hbase
    hbase学习记录(2)shell常用命令
    hbase学习记录(1)简介
    ssh三大框架整合
    spring事务管理
    Ubuntu 18.04版本设置root账户
  • 原文地址:https://www.cnblogs.com/lemonbiscuit/p/7776027.html
Copyright © 2011-2022 走看看