• //插入法排序


    //插入法排序
    /*
    first~有序序列的插入算法
    希尔排序】: 又称缩小增量排序,
    是对直接插入排序的优化 ,
    如下图所示 , 以3为间隔 ,
    每次进行排序 , 使数组接近于有序 ,
    这样就能减少元素后移的次数 ,
     这样在大量数据排序时 ,
     效率会大大提高 ;
     在下面的测试中会有明显的差别
     */
    //将任意读入的整数x 插入一个升序数列后,
    //数列仍案升序排列
    //要领:每读入一个数立即插入到最后存放的数组中
    //,每次插入都是该数列有序
    /*    #include<stdio.h>
        #define n 10
        int main(int argc,char const *argv[])
        {
            int a[n];
            int i,j,k,x;
            scanf("%d",&a[0]);
            for(j=1;j<n;j++)
            {
                scanf("%d",&x);
                if(x>a[j-1])
                {
                    a[j]=x;
                }else
                {
                    i=0;
                    while(x<a[i]&&i<=j-1)
                    {
                        i++;
        //以下for循环从最后一个数开始直到待插位置上依次后移一位
                        for(k=j-1;k>=i;k--)
                        {
                            a[k+1]=a[k];
                        }
                        a[i]=x;
                    }
                }
            }
            for(i=0;i<n;i++)
            {
                printf("%d ",a[i]);
            }
            return 0;
        }
    */
    #include<stdio.h>
    int main(int argc,char const *argv[])
    {
        int i,j,k,x,n;
        int t=0;
        scanf("%d",&n);  //先确定这组数有多少个数
        int a[n];
        scanf("%d",&a[0]);
        while(t<n)
        {
            t++;  
            scanf("%d",&x);
            if(x>a[t-1])
            {
                a[t]=x;
            }else
            {
                i=0;
                for(i=t;i>=0;i--)
                {
                    a[i]=a[i-1];
                    if(x>a[i-2])
                    {
                        a[i-1]=x;
                        break;
                    }
                }
            }
        }
        for(i=0;i<n;i++)
        {
            printf("%d ",a[i]);
        }
        return 0;
    }
     

  • 相关阅读:
    mysql之innodb_buffer_pool
    PBO项目的组织
    03 【PMP】组织结构类型的优缺点和适用范围包括哪些
    02 【PMP】项目管理系统、PMIS、工作授权系统、配置管理系统、变更管理
    01 【PMP】组织结构类型
    手工sql注入简单入门
    新建oracle用户
    linux测试环境搭建步骤
    1、python接口测试requests
    No module named pip 安装工具提示没有pip模块时,解决办法
  • 原文地址:https://www.cnblogs.com/lijianmin6/p/10398492.html
Copyright © 2020-2023  润新知