testadvlists.java

来自「国外的数据结构与算法分析用书」· Java 代码 · 共 90 行

JAVA
90
字号
package simple;

import java.io.*;

/**     This class tests all the lists in the list package */
public class TestAdvLists
{	
	static FileWriter outFile = null;
	
   	public static void main (String args[]) throws Exception
   	{	
   		outFile = new FileWriter("./simple/OutputTestAdvLists.txt");          

          	outFile.write("\nTest the iterated linked lists\n");
          	IteratedSimpleList i=new IteratedSimpleList();
          	if (!i.isEmpty())
                 	outFile.write("Error");
          	i.insertFirst ("a");
          	i.insertFirst ("b");
          	i.insertFirst ("c");
          	i.insertNext("d");
          	i.insertNext("e");
          	outFile.write(i+"\n");
          	i.goFirst();
          	while (!i.after())
          	{
                	outFile.write(i.item().toString()+"\n");
                	i.goForth();
          	}
          	outFile.write("First item:" + i.firstItem()+"\n");
          	i.deleteFirst();
          	i.deleteFirst();
          	i.goAfter();
          	i.insertPriorGo("x");
          	outFile.write(i.item().toString()+ "\n");
          	outFile.write("After delete first:"+i+"\n");
          	i.insertFirst ("d");
          	i.insertFirst ("y");
          	outFile.write(i+"\n");
          	if (i.isFull())
                 	outFile.write("Error\n");
          	outFile.write(i.firstItem()+"\n");
          	i.deleteFirst();
          	i.setItem("z");
          	outFile.write(i.toString()+"\n");
          	outFile.write(i.firstItem()+"\n");
          
          	IteratedSimpleList p = new IteratedSimpleList();
          	p.insertFirst(new Integer(17));
          	p.insertFirst(new Integer(-9));
          	p.insertFirst(new Integer(12));
          	p.insertFirst(new Integer(4));
          	p.insertFirst(new Integer(25));
          	p.insertFirst(new Integer(4));
          	printRemainders(p);
          
          	ListPrinter lp = new ListPrinter();
          	lp.process(p);
          	System.out.println("");
          	AverageCalculator listav = new AverageCalculator();
          	listav.process(p);
          	outFile.write("\nThe average of the values in p is " + listav.average());

          	outFile.close();
   	}
   
	/**	Print the remainder for each item of list p
		Analysis: Time = O(n^2), n = length of the list  */
	static void printRemainders(IteratedSimpleList p) throws Exception
	{
		outFile.write("\nFor list p = (" + p + ")");
		p.goFirst();
		while (!p.after())
		{
			outFile.write("\n     item " + p.item() + " has remainder   ");
			LinkedIterator iter = p.iterator();
			iter.goForth();
			outFile.write("(");
			while (!iter.after())
			{
				outFile.write(iter.item().toString());
				iter.goForth();
				if (!iter.after())
					outFile.write(", ");
			}
			outFile.write(")");
			p.goForth();
		} 
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?