HTML Parser Home Page

org.htmlparser.util.sort
Class Sort

java.lang.Object
  extended by 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 Summary
static int bsearch(Ordered[] array, Ordered ref)
          Binary search for an object
static int bsearch(Ordered[] array, Ordered ref, int lo, int hi)
          Binary search for an object
static int bsearch(Sortable set, Ordered ref)
          Binary search for an object
static int bsearch(Sortable set, Ordered ref, int lo, int hi)
          Binary search for an object
static int bsearch(Vector vector, Ordered ref)
          Binary search for an object
static int bsearch(Vector vector, Ordered ref, int lo, int hi)
          Binary search for an object
static Object[] QuickSort(Hashtable h)
          Sort a Hashtable.
static void QuickSort(Ordered[] a)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(Ordered[] a, int lo0, int hi0)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(Sortable sortable)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(Sortable sortable, int lo0, int hi0)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(String[] a)
          This is a string version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(String[] a, int lo0, int hi0)
          This is a string version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(Vector v)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
static void QuickSort(Vector v, int lo0, int hi0)
          This is a generic version of C.A.R Hoare's Quick Sort algorithm.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

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.

© 2006 Derrick Oswald
Sep 17, 2006

HTML Parser is an open source library released under Common Public License. SourceForge.net