seven7seven
//快速排序,通过测试
#include "stdio.h"
     void quickSort(int* data,int len){   
        if(len<=1) return;
        int start=0;
        int end=len-1;
        int pivot=data[0];
        while(start<end){
            for(;start<end;end--){
                if(data[end]<pivot){
                    data[start++]=data[end];
                    break;
                }
            }
            for(;start<end;start++){
                if(data[start]>pivot){
                    data[end--]=data[start];
                    break;
                }
            }
        }
        data[start]=pivot;
        quickSort(data,start);
        quickSort(data+start+1,len-start-1); 
    } 

void main (){
        int data[]={9,8,7,6,5,4,3,2,1};
        quickSort(data,sizeof(data)/sizeof(int));
        for(int i=0;i<sizeof(data)/sizeof(data[0]);i++){
            printf("%d ",data[i]);
        }
}

 

分类:

技术点:

相关文章:

  • 2021-05-20
  • 2021-06-13
  • 2022-01-17
  • 2021-12-19
  • 2021-11-20
  • 2022-01-16
  • 2021-12-27
  • 2021-09-29
猜你喜欢
  • 2021-12-19
  • 2021-12-19
  • 2022-01-20
  • 2021-12-19
  • 2021-11-30
  • 2021-08-26
  • 2021-12-02
相关资源
相似解决方案