快速排序
快速排序
快速排序是分治的思想,步骤:
- 确定分界点,是随机选取的,也可以是q[l],q[(l/r)/2],q[r],主意规定的有可能会导致时间复杂度变为 $O(n)$
- 调整范围,确定分界点以后左边的数小于分界点,右边的数大于分界点
- 归并处理左右两端
优化算法,分别取两端i和j,i和j分别向中间靠拢,当出现i与j,比较不符时,更换对应下标的值
void quick_sort(int q[], int l, int r) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 haromeng's blog !!


