⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demobasicmarytreeuos.java

📁 国外的数据结构与算法分析用书
💻 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 + -