bitrleiterator.java

来自「基本的数据结构的java代码」· Java 代码 · 共 41 行

JAVA
41
字号
public class BiTrLeIterator extends BiTreeInterator{
	LinQueue q = new LinQueue();
	
	BiTrLeIterator(BiTreeNode t){
		super(t);
	}
	
	public void reset(){
		if(root == null) iteComplete = 1;
		else iteComplete = 0;
		
		if(root == null) return;
		current = root;
		try{
			if(root.getLeft() != null) q.append(root.getLeft());
			if(root.getRight() != null) q.append(root.getRight());
		}
		catch(Exception e){
				e.printStackTrace();
		}
	}
	
	public void next(){
		if(iteComplete == 1){
			System.out.println("已到二叉树尾!");
			return;
		}
		if(!q.isEmpty()){
			try{
				current = (BiTreeNode)q.delete();
				if(current.getLeft() != null) q.append(current.getLeft());
				if(current.getRight() != null) q.append(current.getRight());
			}
			catch(Exception e){
				e.printStackTrace();
			}
		}
		else
			iteComplete = 1;
	}
}

⌨️ 快捷键说明

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