迭代器 遍历 二叉树 如何实现迭代器的 next()去前序遍历一个二叉树?最好是线性时间的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 需要用一个栈来保存路径吧假如有个栈A有个二叉树T有个printNode(Node n)方法Class BTreeEnum{ Tree t; Stack A; Node n; Node nextNode; public BTreEnum() { n=t.root; nextNode=n; } public Node next() { return nextNode; if(nextNode.left!=null) { nextNode=nextNode.left; A.add(nextNode); } else if(nextNode.right!=null) { nextNode=nextNode.right; A.add(nextNode); } else if(nextNode!=n) { nextNode=A.pop().right; } nextNode=null; }}这里只是部分的实现,有些还可能不符合语法,但是由于在网吧,只能写到这样了,自己改改应该行的 一段程序的问题 String方法replaceAll的奇怪异常问题 Java画余弦曲线,哪里错误了? 我的Resultset 结果集 为什么重复的结果有 晕 大家帮我看看 小弟急100分 有关JAVA中删除文件的问题 请问那里有《数据结构与算法分析(Java版)》下载? 什么是“实例”?急 闲来无事,征集所有语言的Hello World程序!up有分! JAVA用什么编辑器最好? ias6.5中应如何配置sybase的database? 请大家帮忙写几行代码 这样更新时间号吗?
有个二叉树T
有个printNode(Node n)方法Class BTreeEnum
{
Tree t;
Stack A;
Node n;
Node nextNode;
public BTreEnum()
{
n=t.root;
nextNode=n;
}
public Node next()
{
return nextNode;
if(nextNode.left!=null)
{
nextNode=nextNode.left;
A.add(nextNode);
}
else if(nextNode.right!=null)
{
nextNode=nextNode.right;
A.add(nextNode);
}
else if(nextNode!=n)
{
nextNode=A.pop().right;
}
nextNode=null;
}
}这里只是部分的实现,有些还可能不符合语法,但是由于在网吧,只能写到这样了,自己改改应该行的