快速排序

来源:互联网 发布:原生js查看form 数据 编辑:程序博客网 时间:2024/06/11 19:54
////  main.c//  split////  Created by 邱阳 on 16/3/19.//  Copyright © 2016年 中路杀神. All rights reserved.//#include <stdio.h>#define SWAP(a,b) (temp=a,a=b,b=temp)int temp;int split(int a[],int low,int high){    int k,i=low;    int x=a[low];    for(k=low+1;k<=high;k++)    {        if(a[k]<=x)        {            i=i+1;            if(i!=k)                SWAP(a[i],a[k]);        }    }    SWAP(a[low],a[i]);    return i;}void quick_sort(int a[],int low,int high){    int k;    if(low<high)    {        k=split(a,low,high);        quick_sort(a,low,k-1);        quick_sort(a,k+1,high);    }}int main(int argc, const char * argv[]){    int a[]={3,4,1,2,6,8},m;    quick_sort(a,0,5);    for(m=0;m<6;m++)printf("%d",a[m]);    printf("\n");    return 0;}

0 0
原创粉丝点击