四十一:快速排序(递归)

Posted shi-yuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四十一:快速排序(递归)相关的知识,希望对你有一定的参考价值。

#include"stdio.h"
void Quick_sort(int *a,int begin,int end)

     
    int middle,i,j;
    middle=a[begin];
    i=begin;
    j=end;
while(i<j)
    
        while(i<j&&a[j]>=middle)
            j--;
            a[i]=a[j];
        while(i<j&&a[i<=middle])
            i++;
            a[j]=a[i];
    
        a[i]=middle;
        if(i-1<begin)
        Quick_sort(a,begin,i-1);
        if(end>i+1)
        Quick_sort(a,i+1,end);

        
int main()

    int b[6]=2,3,5,9,6,4;
    int t;
    Quick_sort(b,0,5);
    for(t=0;t<6;t++)
    printf("%d  ",b[t]);
    return 0;

 

以上是关于四十一:快速排序(递归)的主要内容,如果未能解决你的问题,请参考以下文章

八十一最快最优的快速排序和优化

Vue2.0学习— 列表排序(四十一)

夜深人静写算法(四十)- 八大排序

算法设计与分析分治法--快速排序的递归和非递归实现

快速排序基本思想,递归写法,python和java编写快速排序

快速排序:递归与非递归