算法-java代码实现快速排序
2017-03-05 22:41
316 查看
快速排序
对于一个int数组,请编写一个快速排序算法,对数组元素排序。给定一个int数组A及数组的大小n,请返回排序后的数组。
测试样例:
[1,2,3,5,2,3],6
[1,2,2,3,3,5]
Java (javac 1.7)
代码自动补全
1
import java.util.*;
2
3
public class QuickSort {
4
public int[] quickSort(int[] A, int n) {
5
int left = 0;
6
int right = n-1;
7
return quickSort(A, left, right);
8
}
9
public int[] quickSort(int[] A, int left, int right){
10
if(left < right){
11
int i = left;
12
int j = right;
13
14
int target = A[i];
15
16
while(i < j){
17
while(j>i && A[j]>target){
18
j--;
19
}
20
if(j>i){
21
A[i] = A[j];
22
i++;
23
}
24
while(i<j && A[i]<target){
25
i++;
26
}
27
if(i<j){
28
A[j] = A[i];
29
j--;
30
}
31
}
32
A[i] = target;
33
quickSort(A, left, i-1);
34
quickSort(A, i+1, right);
35
36
}
37
return A;
38
}
39
}
您的代码已保存
答案正确:恭喜!您提交的程序通过了所有的测试用例
相关文章推荐
- 算法 -- Java实现快速排序(图解 + 代码实现)
- 【算法与数据结构】冒泡、插入、归并、堆排序、快速排序的Java实现代码
- java 算法之快速排序实现代码
- 现代应用密码学中椭圆曲线求点集E以及点乘算法的java代码实现
- java排列组合算法代码实现
- 算法代码实现之Union-Find,Java实现,quick-find、quick-union、加权quick-union(附带路径压缩优化)
- 算法代码实现之希尔排序,Java实现
- 排序与查找简单算法 java代码实现
- 算法 -- Java实现选择排序(图解 + 代码实现)
- java实现排序算法之交换排序(冒泡排序和快速排序)
- 如何用70行Java代码实现深度神经网络算法
- 常见算法的java实现代码(持续更新中)
- Java 快速排序(QuickSort)原理及实现代码
- 【算法】红黑树的核心代码实现(java版)
- 算法:二叉树的先序遍历、中序遍历、后序遍历(递归及非递归方式)的java代码实现
- JAVA中的排序算法及代码实现
- 算法代码实现之归并排序,Java实现,自顶向下与自底向上两种方式
- 给大家推荐一个LRU实现算法的java 代码
- 快速排序及其改进算法Java实现
- 关于快速排序的Java代码实现