/** * Class: SearchTreeDemo * Author: Peter Williams * LastEdit: Thu Apr 25 14:29:26 2002 * Purpose: To demonstrate the use of a binary search tree */ import DataStructures.*; import java.util.*; public class SearchTreeDemo { public static void main(String[] args) { SearchTree t = SearchTree.empty(); Random r = new Random(); System.out.println("tree = " + t); for (int count = 0; count < 10; count++) { int item = r.nextInt(100); System.out.println("adding " + item); t = t.add(new Integer(item)); System.out.println("tree = " + t); } System.out.println("tree in order:"); for (Enumeration e = t.elementsInOrder(); e.hasMoreElements();) { System.out.print(" " + e.nextElement()); } System.out.println(); System.out.println("tree in level order:"); for (Enumeration e = t.elementsLevelOrder(); e.hasMoreElements();) { System.out.print(" " + e.nextElement()); } System.out.println(); while (!t.isEmpty()) { int item = r.nextInt(100); if (t.contains(new Integer(item))) { System.out.println("removing " + item); t = t.remove(new Integer(item)); System.out.println("tree = " + t); } } } }