黑马程序员技术交流社区

标题: 交换排序之快速排序 [打印本页]

作者: win_top1    时间: 2014-11-10 22:45
标题: 交换排序之快速排序
  1. public void qSort(int[] QuickSortArray,int low,int high)
  2.      {
  3.              
  4.          int part;
  5.          
  6.          if(low<high)
  7.          {
  8.                  
  9.                 part=this.partition(QuickSortArray, low, high);
  10.                 qSort(QuickSortArray,low,part-1);
  11.                 qSort(QuickSortArray,part+1,high);
  12.                  
  13.          }
  14.      
  15.      
  16.      }

  17.        
  18.      public int partition(int[] QuickSortArray,int low,int high)
  19.      {
  20.              
  21.            
  22.              int flag;
  23.              
  24.              flag=QuickSortArray[low];
  25.              
  26.              while(low<high)
  27.              {
  28.                      
  29.                      
  30.                      while((low<high)&&QuickSortArray[high]>flag)
  31.                              high--;
  32.                      
  33.                      if(low<high)
  34.                              QuickSortArray[low]=QuickSortArray[high];
  35.                      
  36.                      while((low<high)&&QuickSortArray[low]<flag)
  37.                              low++;
  38.                      
  39.                      if(low<high)
  40.                              QuickSortArray[high]=QuickSortArray[low];
  41.             
  42.              }
  43.              
  44.              QuickSortArray[low]=flag;
  45.              
  46.              return low;
  47.              
  48.              
  49.              
  50.      }
复制代码







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2