JAVA排序--[快速排序]

java

 1 package com.array;

2

3 public class Sort_Quick {

4 /*

5 * 项目名称:快速排序 ;

6 * 项目要求:用JAVA对数组进行排序,并运用排序算法" title="快速排序算法">快速排序算法;

7 * 作者:Sevck;

8 */

9 public void sort(int left, int right, int array[]) {

10 int l = left;

11 int r = right;

12 int pirot = array[(left + right) / 2];

13 int temp = 0;

14 while (l < r) {

15 while (array[l] < pirot && l >= left)

16 l++;

17 while (array[r] > pirot && r <= right)

18 r--;

19 if (l >= r)

20 break;

21 temp = array[l];

22 array[l] = array[r];

23 array[r] = temp;

24 }

25

26 if (l == r) {

27 l++;

28 r--;

29 }

30

31 if (left < r)

32 sort(left, r, array);

33 if (right > l)

34 sort(l, right, array);

35 }

36

37 public static void main(String[] args) {

38 int arr1[] = { 7, 3, 2, 9, 15, 1, 14 };

39 Sort_Quick qs = new Sort_Quick();

40 qs.sort(0, arr1.length - 1, arr1);

41

42 System.out.println("The current array is:");

43

44 for (int i = 0; i < arr1.length; i++) {

45 System.out.print(" " + arr1[i]);

46 }

47 }

48 }

这个需要说说了,之前快排有处写错了,自己调试了好久没解决,(结果发现的时候不细心--写成++)。

看了半天没看到,arr1.length - 1 怎么会变成7...找鸡哥问了,瞬间解决了,还被吐槽了代码写的好烂。。一点都不好看

不过看完鸡哥的确实是自叹不如,好好学习了他的编码风格...

以上是 JAVA排序--[快速排序] 的全部内容, 来源链接: utcz.com/z/391763.html

回到顶部