二叉树函数小疑惑~~新手求问

rq8684 2012-08-12 10:03:51
最近在写二叉树,很闹不明白这个函数,这个应该比较明白吧?就不解释了,问问为什么最后要把两个树的根节点为O呢?那样的话不是把那个指针指向的东西删除了?那新树怎么处理?不会找不到子树的地址?


void
BinaryTree::MakeTree(int element ,BinaryTree & left ,BinaryTree & right){

root = new BinaryTreeNode(element ,left.root ,right.root) ;
left.root = right.root = 0 ;

}
...全文
145 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
carter91620 2012-08-14
  • 打赏
  • 举报
回复
root = new BinaryTreeNode(element ,left.root ,right.root) ;
left.root = right.root = 0 ;


left.root和right.root怎么会是这个样子?root.left,root.right,不是这样的么??
I'm Daniel Du 2012-08-13
  • 打赏
  • 举报
回复
肿么会没人,我不是人吗>_<?

R=BinaryTreeNode(element ,A,B) .
这个函数应该是生成一个节点,然后把A置为该节点的左孩子,B置为该节点的右孩子.
然后A的root成员就不需要了,B的同理,因为可以根据R的左孩子,右孩子来找到A,B的地址.
titer1 2012-08-13
  • 打赏
  • 举报
回复
我估计你看代码不完整。
这里只是初始化。

还没有创建节点。只是创建根节点。

所以不存在删除的问题。

rq8684 2012-08-13
  • 打赏
  • 举报
回复
这里都没人来的?

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧