用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字

小喃    -  云代码空间

—— 好好学习,天天向上

合并排序

2016-12-20|963阅||

摘要:#include <stdio.h> #include <stdlib.h> void MergeSort(int a[],int temp[],int low,int high) {     int middle ;     if (low<hig

#include <stdio.h>
#include <stdlib.h>


void MergeSort(int a[],int temp[],int low,int high)
{
    int middle ;
    if (low<high)
    {
        middle=(low+high)/2;
        MergeSort(a,temp,low,middle);
        MergeSort(a,temp,middle+1,high);
        Merge(a,temp,low,middle,high); //ºÏ²¢ÅÅÐò
    }
}


void Merge(int a[],int temp[],int starIndex,int midIndex,int endIndex)
 {
     int i=starIndex,j=midIndex+1,k=starIndex;
    while (i!=midIndex+1 && j!=endIndex+1)
      {
        if (a[i]>a[j])
        {
            temp [k++]=a[i++];
        }
        else
         {
            temp [k++]=a[j++];
         }
      }


  while (i!=midIndex+1)
   temp =[k++]=a[i++];
     while (j!=endIndex+1)
     temp [k++]=a[j++];


   for (i=starIndex;i<endIndex;++i)
   {
     a[i]=temp [i];
   }
}




顶 0踩 0收藏
文章评论
    发表评论

    个人资料

    • 昵称: 小喃
    • 等级: 中级程序员
    • 积分: 6
    • 代码: 0 个
    • 文章: 7 篇
    • 随想: 0 条
    • 访问: 1 次
    • 关注

    人气代码

      标签

      最新提问

        站长推荐