我的代码如下:package Tree;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;/*
 * @Author Xinghh
 * 二叉树
 */
public class BiTree {
public BiTreeNode firstNode; public BiTree() {
this.firstNode = new BiTreeNode();
}

public void CreateBiTree()
{
this.firstNode = CreateBiTree(this.firstNode);
} public BiTreeNode CreateBiTree(BiTreeNode t) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = "";
try {
System.out.println("请输入值:");
str = br.readLine();
} catch (IOException ioexception) {
System.out.print("输入错误!!!");
}
if ("".equals(str.trim()))
t = null;
else
{
t = new BiTreeNode();
t.data = str;
CreateBiTree(t.lChild);
CreateBiTree(t.rChild);
}
return t;
}

/*
 * 
 */
public void PreOrderTraverse(BiTreeNode t)
{
if (t != null)
{
System.out.print(t.data.toString());
PreOrderTraverse(t.lChild);
PreOrderTraverse(t.rChild);
}
else
System.out.println("空树!");
}
}
package Tree;public class BiTreeNode {
public String data;
public BiTreeNode lChild;
public BiTreeNode rChild;
}在创建二叉树时,总是不能正确的保存最初的firstNode指针,请问是怎么回事?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【ise_Keven1】截止到2008-07-19 20:48:57的历史汇总数据(不包括此帖):
    发帖的总数量:6                        发帖的总分数:270                      每贴平均分数:45                       
    回帖的总数量:41                       得分贴总数量:14                       回帖的得分率:34%                      
    结贴的总数量:3                        结贴的总分数:170                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:3                        未结的总分数:100                      
    结贴的百分比:50.00 %               结分的百分比:62.96 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油
      

  2.   

    this.firstNode = new BiTreeNode();
    这句话基本是句废话 , 因为你的BigTreeNode类没有构造体 
      

  3.   

    是吗?BigTreeNode类有个默认的构造函数吧?