zoukankan      html  css  js  c++  java
  • /*归并排序

    /*归并排序
        即将两个都升序(或降序)排列的数据合并
    成一个仍案原序列排列的序列。
    例子1、有一个含有6个数据升序序列和一个含有4个数据
    的升序序列,将二者合并成一个含有10个数据的额升序序列
    */
    #include<stdio.h>
    #define m 6
    #define n 4
    int main(int argc,char const *argv[])
    {
        int a[m]={-3,6,19,26,68,100};
        int b[n]={8,10,12,22};
        int i,j,k,c[m+n];
        i=j=k=0;
        while(i<m&&j<n)//将a、b数组中较小的数依次存放到c数组中
        {
            if(a[i]<b[i])
            {
                c[k]=a[i];
                i++;
            }else
            {
                c[k]=b[j];
                j++;
            }
            k++;
            while(i>=m&&j<n)
            {
                c[k]=b[i];
                k++;
                j++;
            }
            while(j>=n&&i<m)
            {
                c[k]=a[i];
                k++;
                i++;
            }
        }
        for(i=0;i<m+n;i++)
        {
            printf("%d ",c[i]);
        }
        return 0;
    }
    //-3 6 8 10 12 22 19 26 68 100

  • 相关阅读:
    Hbase­优化方案
    ssh 登录
    微软2017校招笔试题3 registration day
    微软2017校招笔试题2 composition
    STL中的查找算法
    leetcode-188 买卖股票4
    leetcode-306 Additive Number
    网络安全(3): 数据完整性校验
    网络安全(2)-数据加解密
    linux共享库
  • 原文地址:https://www.cnblogs.com/lijianmin6/p/10398657.html
Copyright © 2011-2022 走看看