home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VCafe / WDESAMPL.BIN / QSortAlgorithm.class (.txt) < prev    next >
Encoding:
Java Class File  |  1996-11-19  |  842 b   |  50 lines

  1. public class QSortAlgorithm extends SortAlgorithm {
  2.    private boolean pauseTrue(int var1, int var2) throws Exception {
  3.       super.pause(var1, var2);
  4.       return true;
  5.    }
  6.  
  7.    void QuickSort(int[] var1, int var2, int var3) throws Exception {
  8.       int var4 = var2;
  9.       int var5 = var3;
  10.       if (var3 > var2) {
  11.          int var6 = var1[(var2 + var3) / 2];
  12.  
  13.          while(var4 <= var5) {
  14.             while(var4 < var3 && this.pauseTrue(var2, var3) && var1[var4] < var6) {
  15.                ++var4;
  16.             }
  17.  
  18.             while(var5 > var2 && this.pauseTrue(var2, var3) && var1[var5] > var6) {
  19.                --var5;
  20.             }
  21.  
  22.             if (var4 <= var5) {
  23.                this.swap(var1, var4, var5);
  24.                ++var4;
  25.                --var5;
  26.             }
  27.          }
  28.  
  29.          if (var2 < var5) {
  30.             this.QuickSort(var1, var2, var5);
  31.          }
  32.  
  33.          if (var4 < var3) {
  34.             this.QuickSort(var1, var4, var3);
  35.          }
  36.       }
  37.  
  38.    }
  39.  
  40.    private void swap(int[] var1, int var2, int var3) {
  41.       int var4 = var1[var2];
  42.       var1[var2] = var1[var3];
  43.       var1[var3] = var4;
  44.    }
  45.  
  46.    public void sort(int[] var1) throws Exception {
  47.       this.QuickSort(var1, 0, var1.length - 1);
  48.    }
  49. }
  50.