首页 > 编程语言 > 详细

copy快速排序

时间:2017-06-08 20:17:50      阅读:328      评论:0      收藏:0      [点我收藏+]

int FindPivot(int a[],int left,int right){
int i=left,j=right,x=a[i];
while(i<j)
{
  while(i<j&&a[j]>=x)
  j--;
  if(i<j)
   {
   a[i]=a[j];
   i++;
   }

while(i<j&&a[i]<x)
   i++;
if(i<j)
{
   s[j]=a[i];
   j--;
}
}

s[i]=x;
return i;
}



    void quick_sort1(int s[], int l, int r)  
    {  
        if (l < r)  
        {  
            int i = FindPivot(s, l, r);//先成挖坑填数法调整s[]  
            quick_sort1(s, l, i - 1); // 递归调用   
            quick_sort1(s, i + 1, r);  
        }  
    }    

copy快速排序

原文:http://www.cnblogs.com/maowuyu-xb/p/6964441.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!