新手求助:二叉树的递归删除

米兰的小铁匠z 米兰的小铁匠z 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
代码附上:
/**
* 销毁二叉树
*
*/
BiTree DestroyBiTree(BiTree T) {
if (T != null) {
if (T.lchild != null) {
T.lchild = DestroyBiTree(T.lchild);
}
if (T.rchild != null) {
T.rchild = DestroyBiTree(T.rchild);
}
T = null;
}
return T;
}

public class BiTree {
char data;
BiTree lchild, rchild;
}
问题出在不知道如何释放根节点的内存,这样子虽然最后return null了,根节点的左右孩子也都为null,了,但是根节点的数据一直都还在,特来请教,想在函数里面做一些修改
...全文

相关推荐

递归删除二叉树中以x为根的子树

今天小编就为大家分享一篇关于递归删除二叉树中以x为根的子树,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

weixin_38549327

【数据结构】——搜索二叉树的插入,查找和删除(递归&非递归)

本代码是在windows平台下vs2008上编译通过,包含搜索二叉树的插入,查找和删除算法(采用递归和非递归两种方法)。包含全部在平台下的文件,解压可以直接运行。

龙跃十二

线索二叉树的插入,删除

一、内容 线索二叉树的应用。实现线索二叉树的建立、插入、删除、恢复线索的实现。

haichaozhuo

C语言实现二叉树的创建、插入、删除、遍历等操作

C语言实现二叉树的创建、插入、删除、遍历(先序、中序、后续、深度优先、广度优先)、计算度为0,1,2的节点个数。 包括排序二叉树的实现

tianyunzqs

C语言二叉树实现指南:从零构建数据结构与递归算法

数据结构是计算机科学的核心基础,它研究如何高效地组织和存储数据。二叉树作为一种非线性数据结构,通过节点与指针的链接关系,实现了层次化的数据组织方式。其核心原理在于每个节点最多拥有两个子节点,这种限制反而带来了结构清晰性和操作规律性。在技术价值上,二叉树不仅是理解更复杂树形结构(如AVL树、B树)的基础,也是递归算法思想的绝佳训练场,广泛应用于文件系统、数据库索引、编译器语法分析等场景。本文以C语言为载体,通过结构体定义、动态内存管理、递归遍历等实践,手把手教你实现二叉树的创建、搜索与销毁,特别针对指针操作、

weixin_30402343
评论 5
收藏 已收藏
分享
返回顶部
米兰的小铁匠z
Java 51,407 成员 86,135 内容