📄 demobasicmarytreeuos.java
字号:
/* DemoBasicMAryTreeUos.java
* ---------------------------------------------
* Copyright (c) 2002 University of Saskatchewan
* All Rights Reserved
* --------------------------------------------- */
package dslib.demo;
import dslib.tree.*;
import java.io.*;
/** Class that demos the BasicMAryTreeUos */
public class DemoBasicMAryTreeUos
{
/** Performs a demo on the tree passed into it. Note that this
destroys the tree passed to it.
@param t1 A BasicMAryTreeUos to be tested on.
*/
public DemoBasicMAryTreeUos(BasicMAryTreeUos 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("Testing methods of BasicMAryTreeUos");
out.println("Is empty? " + t1.isEmpty());
t1 = new BasicMAryTreeUos("10", 6);
t1.insertRoot(new MAryNodeUos("5", 1), 1);
t1.insertRoot(new MAryNodeUos("11", 2), 2);
t1.insertRoot(new MAryNodeUos("7", 3), 3);
BasicMAryTreeUos t2 = new BasicMAryTreeUos("6", 4);
t2.insertRoot(new MAryNodeUos("12", 1), 1);
t2.insertRoot(new MAryNodeUos("2", 4), 2);
t1.setRootSubtree(t2, 4);
t1.setRootSubtree(new BasicMAryTreeUos("19", 1), 5);
t1.setRootSubtree(new BasicMAryTreeUos("23", 1), 6);
BasicMAryTreeUos t3 = new BasicMAryTreeUos("9", 4);
t3.insertRoot(new MAryNodeUos("17", 1), 1);
t3.insertRoot(new MAryNodeUos("8", 3), 2);
t3.insertRoot(new MAryNodeUos("3", 4), 4);
((MAryNodeUos)t3.rootItem()).setSubnode(2, new MAryNodeUos("19", 3));
BasicMAryTreeUos t4 = new BasicMAryTreeUos("23", 4);
t4.insertRoot(new MAryNodeUos("9", 3), 1);
t4.setRootSubtree(t1, 1);
t4.setRootSubtree(t3, 2);
t4.setRootSubtree(new BasicMAryTreeUos("108", 3), 3);
out.println("t4: " + t4.toStringByLevel());
out.println("rootItem: " + t4.rootItem().toString());
out.println("full?: " + t4.isFull());
out.println("empty?: " + t1.isEmpty());
out.println("rootArity for t4: " + t4.rootArity());
out.println("t4's rootLastNonEmptyChild(): " + t4. rootLastNonEmptyChild());
out.println("1st subtree: " + t4.rootSubtree(1));
out.println("3rd subtree: " + t4.rootSubtree(3));
BasicMAryTreeUos clone = new BasicMAryTreeUos(4);
clone = (BasicMAryTreeUos) t1.clone();
out.println("clone of t1: " + clone.toString());
t4.setRootItem("1");
out.println("1 is new root item: " + t4.toStringByLevel());
t4.deleteRoot();
out.println("after delete 1: " + t4.toString());
t4.deleteRoot();
out.println("after delete 17: " + t4.toString());
t1.deleteRoot();
out.println("after delete 7: " + t4.toString());
t1.deleteRoot();
out.println("after delete 12: " + t4.toString());
t1.deleteRoot();
out.println("after delete 2: " + t4.toString());
t1.deleteRoot();
out.println("after delete 5: " + t4.toString());
t4.wipeOut();
out.println("after wipe out: " + t4.toString());
out.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -