C++_快速排序算法qsort 的实现
#include<iostream> using namespace std; int partion(int arr[],int low,int high){ int pivot=arr[low]; int pivotkey=arr[low]; while(low<high){ while(low<high && arr[high]>=pivotkey) high--; arr[low]=arr[high]; while(low<high && arr[low]<=pivotkey) low++; arr[high]=arr[low]; } arr[low]=pivot; return low; } void qsort(int arr[],int low,int high){ int pivotloc=0; if(low<high){ pivotloc=partion(arr,low,high); qsort(arr,low,pivotloc-1); qsort(arr,pivotloc+1,high); } } int main(){ int arr[]={49,38,65,97,76,13,27,49}; int arr_len=sizeof(arr)/sizeof(arr[0]); qsort(arr,0,arr_len-1); for(int i=0;i<arr_len;i++){ cout<<arr[i]<<endl; } return 0; }