排序 快排 算法
Faded0104
这个作者很懒,什么都没留下…
展开
-
面试题目--一步步优化快速排序
#if 1 void swap(int* a, int i, int j) { int tmp = a[i]; a[i] = a[j]; a[j] = tmp; } void select_piovt(int *a, int start, int end) { int mid = (start + end)/2; //end is max if(a[end] < a[mid]) { swap(a, mid , end); } if(a[end] < a[start]).原创 2020-08-01 21:27:04 · 243 阅读 · 0 评论 -
排序 quick_sort 快排 算法 随机函数 rand() 快速排序的随机化版本
快速排序: 快速排序在基本逆序的情况下时间复杂度时O(n*n),虽然他在最坏情况下效率很差.但是快排在实际应用中通常是最好的选择,应为他的平均性能是最好的.他的期望时间复杂度时 O(n lgn), 而且O(nlgn)中的常数因子很小, 另外他还能进行原址排序,甚至在虚存环境中也能很好的工作. 快速排序使用了分治思想. #include using namespace std;原创 2017-02-04 16:26:45 · 1434 阅读 · 0 评论