一些排序算法
1. Quicksort (快速排序)
最简单实现:
int partition(int a[], int start, int end) { int pivot = a[start]; int i = start; int j = start + 1; while(j <= end) { if(pivot > a[j]) { swap(a[++i], a[j++]); } else { j++; } } swap(a[start], a[i]); return i; } void quick_sort(int a[], int start, int end) { if(start >= end) return; int q = partition(a, start, end); quick_sort(a, start, q-1); quick_sort(a, q+1, end); }