A range-searching implementation: A simple example of programming with JDSL.

by Joe Lee (jcl@cs.brown.edu) for CS252 -- 2/3/03


- This program uses the CS252 JDSL Advanced package, as well as the junit
  package (http://junit.sourceforge.net).  See "go.sh" for an example
  command-line for running the GUI program.

- Class documentation is in "doc/javadoc".

- Source code is in "rangesearch" and corresponding subdirectories.


Note that although this simple example doesn't do the following things that
you may wish to do in your own projects:

  - Data structure factories.  Some algorithm implementations may be more
    useful if they offer the coder the ability to select which containers
    are used in the implementation.  Any JDSL container can act as a factory
    for new containers of the same type through the newContainer() method,
    so passing such a container into your algorithm's constructor would be
    one way to achieve container-independence.

  - Batch random testing/stress testing.  Users of your algorithm
    implementation will have greater confidence in its functionality if you
    can demostrate that it performs correctly (e.g. identically to a
    simple brute-force implementation) for a large number of randomly
    generated "typical" problems, in addition to small hand-tests.

