博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java:快速排序
阅读量:5377 次
发布时间:2019-06-15

本文共 814 字,大约阅读时间需要 2 分钟。

import java.util.Arrays;

public class testQuicksort {

public static void main(String[] args) {
int[] arr = { 12, 35, 56, 678, 2322, 561 };
quickSort(arr, 0, arr.length - 1);
System.out.println(Arrays.toString(arr));
}

public static void quickSort(int[] arr, int start, int end) {

// 开始排序位置小于数组结尾位置
if (start < end) {
// 将数组的第零个数作为基准数
int stard = arr[start];
int low = start;
int high = end;
//循环分别找到比标准数大和小的数
while (low < high) {
// 右边的数比基准数大
while (low < high && stard <= arr[high]) {
high--;
}
//(右边的数比基准数小)使用右边的数替换左边的数
arr[low] = arr[high];
// 左边的数比基准数小
while (low < high && arr[low] <= stard) {
low++;
}
//(左边的数比基准数大)使左边的数替换右边的数
arr[high] = arr[low];
}
//重合时将基准值赋给低(高)位的位置的元素
arr[low] = stard;
quickSort(arr, start, low);
quickSort(arr, low + 1, end);
}
}
}

转载于:https://www.cnblogs.com/oycq9999/p/10246336.html

你可能感兴趣的文章
转录组组装软件stringtie
查看>>
application对象
查看>>
sqlserver2008 中使用MSXML2.ServerXMLHttp拼装soap调用webservice
查看>>
20170926日关于需求调研的一些理解,
查看>>
[HNOI2008]玩具装箱TOY
查看>>
ejabberd组成模块
查看>>
笔记本电脑插入耳机后无法使用解决办法
查看>>
全球最昂贵的10大科技产品
查看>>
Sql获取第一天、最后一天
查看>>
SQL中如何使用UPDATE语句进行联表更新(转)
查看>>
移动端,ajax 动态加载的元素,为动态添加的一系列同个类名的元素添加点击事件...
查看>>
前端性能优化--图片懒加载(lazyload image)
查看>>
02.规划过程组表格-活动持续时间估算工作表
查看>>
关于cmp函数参数中的&符号
查看>>
Linq 多件拼接
查看>>
《构建之法》读后感
查看>>
Check odd faces of the selection object
查看>>
[Algorithm -- Dynamic Programming] Recursive Staircase Problem
查看>>
[Angular 2] Using ngrx/store and Reducers for Angular 2 Application State
查看>>
2. Add Two Numbers
查看>>