【发布时间】:2023-01-08 17:17:52
【问题描述】:
最近在学习数据结构和算法。当我在我的根 BinaryTreeNode 的 leftChild 中添加一个 leftChild 时,比如说,Root Node 是 a,a 的 leftChild 是 b,b 的 left Child 是 d。但是当我创建节点d时,令我惊讶的是数据为b的节点也被更改为d。 我知道这是 C 的指针引起的问题,但我不知道如何解决。 这是我的代码。
这就是我定义 BinNode 和 BinTree 结构的方式
这些是用于生成节点和添加子节点的函数。
这是我的主要功能
添加根节点的第一个子节点后,根节点就是这个样子。
添加根节点的第二个子节点后,根节点看起来是这样的。
能否请您帮我找出出现此问题的原因以及解决方法?
【问题讨论】:
-
不要使用链接。在问题中键入所有必需的代码。
标签: c pointers binary-tree