您的位置:首页 > 编程语言 > Java开发

算法-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

}


您的代码已保存
答案正确:恭喜!您提交的程序通过了所有的测试用例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: