📄 demobinarytreeuos.java
字号:
/* DemoBinaryTreeUos.java
* ---------------------------------------------
* Copyright (c) 2002 University of Saskatchewan
* All Rights Reserved
* --------------------------------------------- */
package dslib.demo;
import java.io.*;
import dslib.tree.*;
import dslib.base.CursorUos;
/** A class that demonstrates the use of any BinaryTreeUos.*/
public class DemoBinaryTreeUos extends DemoBasicBinaryTreeUos
{
/** Performs a test on the BinaryTreeUos that is passed to it.
@param t1 The BinaryTreeUos to be demo-ed.*/
public DemoBinaryTreeUos(BinaryTreeUos t1)
{
super(t1);
// place the output in a text file that reflects the class being demonstrated.
String className = t1.getClass().getName();
className = className.substring(className.lastIndexOf(".")+1);
PrintWriter out = null;
try
{
out = new PrintWriter(new FileOutputStream("OutputDemo" + className + ".txt", true));
} catch (Exception e)
{
System.err.println("Error creating output file in test routine for " + className);
e.printStackTrace();
}
out.println();
out.println("Demo For BinaryTreeUos");
out.println("Creating new tree with root 5");
BinaryTreeUos t5 = (BinaryTreeUos) t1.treeClone();
BinaryTreeUos t6 = (BinaryTreeUos) t1.treeClone();
t1.insertRoot(new Integer(5));
out.println("Go Root");
t1.goRoot();
out.println("Inserting..... 31");
t1.insertLeafLeftGo(new Integer(31));
out.println("Inserting..... 12");
t1.insertLeafRightGo(new Integer(12));
out.println("Inserting..... 21");
t5.insertRoot(new Integer(21));
out.println("Inserting..... 15");
t6.insertRoot(new Integer(15));
out.println("Go Root");
t1.goRoot();
t1.setRightSubtree(t5);
t1.goLeft();
t1.setLeftSubtree(t6);
out.println("Inserting..... 18");
t1.insertParentLeftGo(new Integer(18));
out.println("Inserting..... 1");
t1.insertParentRightGo(new Integer(1));
out.println("Inserting..... 33");
t1.insertLeafRightGo(new Integer(33));
out.println(t1.toStringByLevel());
t1.goRoot();
out.println("Current Contents: " + t1);
out.println("Right Subtree: " + t1.rightSubtree().toStringByLevel());
out.println("Left Subtree: " + t1.leftSubtree().toStringByLevel());
out.println("Frequency of 21 " + t1.frequency(new Integer(21)));
out.println("Frequency of 19 " + t1.frequency(new Integer(19)));
t1.goRoot();
out.println("Search for..... 33");
t1.search(new Integer(33));
out.println("Item exists? " + t1.itemExists());
if(t1.itemExists())
{
out.println("Deleting Current Item");
t1.deleteItem();
}
out.println("Current Contents" + t1);
out.println("Search for..... 1");
t1.search(new Integer(1));
out.println("Item exists? " + t1.itemExists());
out.println("Deleting Current Item");
t1.deleteItem();
out.println("Current Contents" + t1);
out.println("Search for..... 15");
t1.search(new Integer(15));
out.println("Item exists? " + t1.itemExists());
if(t1.itemExists())
{
out.println("Deleting Current Item");
t1.deleteItem();
}
out.println("Current Contents" + t1);
out.println("inorder traversal:");
t1.goBefore();
out.println("before--item exists?: " + t1.linearItemExists());
t1.goFirst();
while (t1.linearItemExists())
{
out.print(t1.linearItem().toString() + " ");
t1.goForth();
}
out.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -