前往顾页
以后地位: 主页 > 收集编程 > Jsp实例教程 >

java中的疾速排序算法

时候:2012-11-22 00:00来源:知行网www.zhixing123.cn 编辑:麦田守望者

这几天需求用到疾速排序算法,固然之前写过功课,但也有些忘记,因而上彀搜了一下,发明固然很多,却或多或少都有些问题,特别是数据越界,所以我本身调了一下,以下是颠末测试的疾速排序的法度,希望对年夜家有些帮忙:

1.public class QSort {
2.
3. /**
4. * @author 王仲远 2007-03-30
5. * @param pData 需求排序的数组
6. * @param left 左边的地位,初始值为0
7. * @param right 右边的地位,初始值为数组长度
8. */
9. public static void QuickSort(int[] pData,int left,int right)
10. {
11. int i,j;
12. int middle,temp;
13. i = left;
14. j = right;
15. middle = pData[left];
16. while(true)
17. {
18. while((++i)<right-1 && pData[i]<middle);
19. while((--j)>left && pData[j]>middle);
20. if(i>=j)
21. break;
22. temp = pData[i];
23. pData[i] = pData[j];
24. pData[j] = temp;
25. }
26.
27. pData[left] = pData[j];
28. pData[j] = middle;
29.
30. if(left<j)
31. QuickSort(pData,left,j);
32.
33.
34. if(right>i)
35. QuickSort(pData,i,right);
36. }
37.
38. public static void main(String[] args){
39. int[] pData = new int[10];
40. for(int i = 0; i< 10; i++)
41. pData[i] = (int)(Math.random()*100);
42.
43. for(int i = 0; i<pData.length; i++)
44. System.out.print(pData[i]+" ");
45.
46. QSort.QuickSort(pData, 0, pData.length);
47.
48. System.out.println("\n***********************");
49.
50. for(int i = 0; i<pData.length; i++)
51. System.out.print(pData[i]+" ");
52. }
53.
54.}
 

顶一下
(0)
0%
踩一下
(0)
0%
------分开线----------------------------
标签(Tag):Java JAVA实例教程 JAVA根本教程 Java源代码 Java技能
------分开线----------------------------
颁发评论
请自发遵循互联网相关的政策法规,严禁公布色情、暴力、革命的谈吐。
评价:
神色:
考证码:点击我更换图片
猜你感兴趣