Class Sort

java.lang.Object
org.htmlparser.util.sort.Sort

public class Sort extends Object
A quick sort algorithm to sort Vectors or arrays. Provides sort and binary search capabilities.

This all goes away in JDK 1.2.

Version:
1.4, 11 June, 1997
Author:
James Gosling, Kevin A. Smith, Derrick Oswald
  • Method Details

    • QuickSort

      public static void QuickSort(Vector v) throws ClassCastException
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle vectors that are already sorted, and vectors with duplicate keys. Equivalent to:
       QuickSort (v, 0, v.size () - 1);
       
      Parameters:
      v - A Vector of Ordered items.
      Throws:
      ClassCastException - If the vector contains objects that are not Ordered.
    • QuickSort

      public static void QuickSort(Vector v, int lo0, int hi0) throws ClassCastException
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle vectors that are already sorted, and vectors with duplicate keys.

      If you think of a one dimensional vector as going from the lowest index on the left to the highest index on the right then the parameters to this function are lowest index or left and highest index or right.

      Parameters:
      v - A Vector of Ordered items.
      lo0 - Left boundary of vector partition.
      hi0 - Right boundary of vector partition.
      Throws:
      ClassCastException - If the vector contains objects that are not Ordered.
    • QuickSort

      public static void QuickSort(Ordered[] a)
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle arrays that are already sorted, and arrays with duplicate keys.

      Equivalent to:

       QuickSort (a, 0, a.length - 1);
       
      Parameters:
      a - An array of Ordered items.
    • QuickSort

      public static void QuickSort(Ordered[] a, int lo0, int hi0)
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle arrays that are already sorted, and arrays with duplicate keys.

      If you think of a one dimensional array as going from the lowest index on the left to the highest index on the right then the parameters to this function are lowest index or left and highest index or right.

      Parameters:
      a - An array of Ordered items.
      lo0 - Left boundary of array partition.
      hi0 - Right boundary of array partition.
    • QuickSort

      public static void QuickSort(String[] a)
      This is a string version of C.A.R Hoare's Quick Sort algorithm. This will handle arrays that are already sorted, and arrays with duplicate keys.

      Equivalent to:

       QuickSort (a, 0, a.length - 1);
       
      Parameters:
      a - An array of String items.
    • QuickSort

      public static void QuickSort(String[] a, int lo0, int hi0)
      This is a string version of C.A.R Hoare's Quick Sort algorithm. This will handle arrays that are already sorted, and arrays with duplicate keys.

      If you think of a one dimensional array as going from the lowest index on the left to the highest index on the right then the parameters to this function are lowest index or left and highest index or right.

      Parameters:
      a - An array of String items.
      lo0 - Left boundary of array partition.
      hi0 - Right boundary of array partition.
    • QuickSort

      public static void QuickSort(Sortable sortable, int lo0, int hi0)
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle Sortable objects that are already sorted, and Sortable objects with duplicate keys.

      Parameters:
      sortable - A Sortable object.
      lo0 - Left boundary of partition.
      hi0 - Right boundary of partition.
    • QuickSort

      public static void QuickSort(Sortable sortable)
      This is a generic version of C.A.R Hoare's Quick Sort algorithm. This will handle Sortable objects that are already sorted, and Sortable objects with duplicate keys.

      Equivalent to:

       QuickSort (sortable, sortable.first (), sortable.last ());
       
      Parameters:
      sortable - A Sortable object.
    • QuickSort

      public static Object[] QuickSort(Hashtable h) throws ClassCastException
      Sort a Hashtable.
      Parameters:
      h - A Hashtable with String or Ordered keys.
      Returns:
      A sorted array of the keys.
      Throws:
      ClassCastException - If the keys of the hashtable are not Ordered.
    • bsearch

      public static int bsearch(Sortable set, Ordered ref, int lo, int hi)
      Binary search for an object
      Parameters:
      set - The collection of Ordered objects.
      ref - The name to search for.
      lo - The lower index within which to look.
      hi - The upper index within which to look.
      Returns:
      The index at which reference was found or is to be inserted.
    • bsearch

      public static int bsearch(Sortable set, Ordered ref)
      Binary search for an object
      Parameters:
      set - The collection of Ordered objects.
      ref - The name to search for.
      Returns:
      The index at which reference was found or is to be inserted.
    • bsearch

      public static int bsearch(Vector vector, Ordered ref, int lo, int hi)
      Binary search for an object
      Parameters:
      vector - The vector of Ordered objects.
      ref - The name to search for.
      lo - The lower index within which to look.
      hi - The upper index within which to look.
      Returns:
      The index at which reference was found or is to be inserted.
    • bsearch

      public static int bsearch(Vector vector, Ordered ref)
      Binary search for an object
      Parameters:
      vector - The vector of Ordered objects.
      ref - The name to search for.
      Returns:
      The index at which reference was found or is to be inserted.
    • bsearch

      public static int bsearch(Ordered[] array, Ordered ref, int lo, int hi)
      Binary search for an object
      Parameters:
      array - The array of Ordered objects.
      ref - The name to search for.
      lo - The lower index within which to look.
      hi - The upper index within which to look.
      Returns:
      The index at which reference was found or is to be inserted.
    • bsearch

      public static int bsearch(Ordered[] array, Ordered ref)
      Binary search for an object
      Parameters:
      array - The array of Ordered objects.
      ref - The name to search for.
      Returns:
      The index at which reference was found or is to be inserted.