/**
* 快速排序.
* @param array 待排序数组
* @param low 排序起始位置
* @param high 排序结束位置
*/
private static void quickSort(int[] array, int low, int high) {
int i, j, index;
if (low > high || low < 0 || high >= array.length) {
return ;
}
i = low;
j = high;
index = array[i];
while (i < j) {
while (i < j && array[j] >= index) {
j--;
}
if (i < j) {
array[i++] = array[j];
}
while (i < j && array[i] < index) {
i++;
}
if (i < j) {
array[j--] = array[i];
}
}
array[i] = index;
quickSort(array, low, i - 1);
quickSort(array, i + 1, high);
}
JAVA快速排序(QUICK-SORT)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 项目中无意间用到了快速排序,当时因为忘记了,上网搜了一下......可搜的搜的我思考一个问题:在java下Arra...
- 算法相关GitHub持续更新,欢迎打脸~ 排序算法之选择排序 时间复杂度:O(n2) 空间复杂度:O(1) 是否稳...
- 快速排序和冒泡排序类似,都是基于交换的思想,快速排序对冒泡排序进行了优化,从而更加快速高效(从名字就可以看出应该很...
- 基本思想: 1)选择一个基准元素,通常选择第一个元素或者最后一个元素。 2)通过一趟排序将待排序的记录分割成独立的...