0
我是新来叠加流动,所以很抱歉有任何错误,但我想回答这个问题:二叉树合并?
“编写一个方法,采用两个二叉树t1,t2和二叉树节点v作为参数。它构造并返回一个新的二叉树,其v的根作为其左子树为t1,其右子树为t2。
我已经做了几个小时的尝试,似乎甚至不能做出1个二叉树..老师不会真正解释,并希望我们使用对象来做到这一点。这是她要我们使用..是否有人可以帮助我的格式..
注释掉的东西只是我的努力得到的东西的工作..
public class treeNode
{
private Object da;
private treeNode left;
private treeNode right;
public treeNode(Object newItem)
{
da = newItem;
left = null;
right = null;
}
public treeNode(Object newItem, treeNode leftNode, treeNode rightNode)
{
da = newItem;
left = leftNode;
right = rightNode;
}
public void setItem(Object newItem)
{
da = newItem;
}
public Object getItem()
{
return da;
}
public void setLeft(treeNode leftNode)
{
left = leftNode;
}
public treeNode getLeft()
{
return left;
}
public void setRight(treeNode rightNode)
{
right = rightNode;
}
public treeNode getRight()
{
return right;
}
//------------------------
public void buildTree()
{
}
//public void combine (l , r)
//{
// T = 5;
// setLeft(l);
// setRight(r);
// return T;
//}
//-----------------------
public static void main (String args [])
{
// treeNode a = new treeNode(5);
// treeNode b = new treeNode(8);
// treeNode c = new treeNode(2);
// a.setLeft(b);
// a.setRight(c);
// System.out.println(a.da);
// System.out.println(a.getLeft());
// System.out.println(a.getRight());
// treeNode t = new treeNode();
// t.left = t1;
// t.right = t2;
// System.out.println(buildTree(t));
}
}
只是做一些随机树T1和T2。这里的组合部分是微不足道的,因为它不需要求助。 (像这样:'TreeNode v = new TreeNode(10,t1,t2)') – GoneUp
Woops。误解。你需要制作一个方法。因此,基本上几乎你所做的结合,只需添加一个TreeNode v参数并执行setleft和setRight v对象。 – GoneUp