echo ""; echo ""; echo ""; echo ""; if(!is_admin){echo "";} » java中的快速排序算法 仲子说

2007-03-30

java中的快速排序算法

Posted in Java at 12:46 Author:仲远

标签:

?????????????????????????????????????????????????????????????????????????????????????????????????????

  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. }

本文可以自由转载,转载时请保留全文并注明出处:
转载自仲子说 [ http://www.wangzhongyuan.com/ ]
原文链接:

2 Comments »

  1. 仲远 said,

    2007年March30日 at 13:21

    网上的程序都有点毛病,我把这个程序调通了放在这里~~~~

  2. 仲远 said,

    2007年March30日 at 19:20

    汗…

Leave a Comment

*
To prove you're a person (not a spam script), type the security text shown in the picture. Click here to regenerate some new text.
Click to hear an audio file of the anti-spam word