【发布时间】:2013-02-25 18:49:29
【问题描述】:
我有以下任务:
编写、记录(内部)和测试 Java 程序以解决以下问题:
使用链接表示来实现二叉树 ADT,其中每个节点包含以下内容:
- 数据
- 左孩子的参考/链接
- 引用/链接到正确的孩子
假设数据是整数值。
实现以下操作(如教科书7.3节所述):
- 尺寸
- 是空的
- 替换
- 根
- 左
- 对
- 已离开
- 有权利
- 是内部的
- 是外部的
- 是根
- 向左插入
- 插入右
- 附上
- 移除
还有以下遍历:
- 预购
- 后购
- 按顺序
我知道二叉树是如何工作的,并且在大多数情况下我这样做没有问题 - 但我遇到的问题是我不允许在节点类中包含除给定的三个变量之外的任何变量 - 那是,我无法建立父链接。如果我无法链接到父节点,如何检查给定节点是否是树的根?
【问题讨论】:
-
您必须将根的引用存储在某处。检查节点 N 是否是根节点只是检查 N == 根节点。
标签: java algorithm binary-tree