问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

二叉树的建立、中序遍历(用C语言实现)

发布网友 发布时间:2022-05-05 19:23

我来回答

3个回答

热心网友 时间:2022-04-18 21:39

#include "iostream.h"
//#include "exception.h"
//树节点类
int count=0,mode=0,data=0;

class BinaryTreeNode
{
friend class BinaryTree;
public :
BinaryTreeNode()
{
LeftChild = RightChild = 0;
}
BinaryTreeNode(const int& e)
{
data = e;
LeftChild = RightChild = 0;
}
BinaryTreeNode(const int& e, BinaryTreeNode *l,BinaryTreeNode *r)
{
data = e;
LeftChild = l;
RightChild = r;
}
private :
int data;
BinaryTreeNode *LeftChild, //左子树
*RightChild; // 右子树
} ;
class BinaryTree
{
friend class BinaryTreeNode;
public :
BinaryTree( )
{
root = 0;
}
~ BinaryTree( ) { }
bool IsEmpty( ) const
{
return ((root) ? false : true);
}
bool Root(int& x) const
{// 取根节点的d a t a域,放入x
// 如果没有根节点,则返回f a l s e
if (root)
{
x = root->data;
return true;
}
else return false; // 没有根节点
}
void MakeTree(const int& element)
{
root = new BinaryTreeNode (element);
}
void MakeTree(const int& element,BinaryTree& left,BinaryTree& right)
{// 将left, right和element 合并成一棵新树
// left, right和this必须是不同的树
// 创建新树
root = new BinaryTreeNode (element, left.root, right.root);
// 阻止访问l e f t和r i g h t
left.root = right.root = 0;
}
void Inorder(void (*Visit) (BinaryTreeNode *u))
{
InOrder ( Visit,root ) ;
}
void Delete( )
{
PostOrder (Free,root);
root = 0;
}

private :
BinaryTreeNode *root; // 根节点指针
static void Free(BinaryTreeNode *t)
{
delete t;
}
void InOrder(void(*Visit) (BinaryTreeNode *u),BinaryTreeNode *t)
{// 中序遍历
if (t)
{
InOrder(Visit, t->LeftChild);
Visit( t ) ;
InOrder( Visit, t->RightChild);
}
}

热心网友 时间:2022-04-18 22:57

课本上不是有吗?我不大明白为什么有很多人来这里求程序,有意思吗?

热心网友 时间:2022-04-19 00:31

自己写
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 揭秘:码牌支付风控升级,背后真相揭秘 电脑电视直播软件哪个好用什么软件好电脑看电视直播 潼南子同街学区是哪些 三极管BU406价格和参数? 火锅料放在冰柜忘了插电一个星期给会坏了吗 火锅的设备有哪些 二叉树的建立和遍历c语言的 男:梦见两棵树,树根连在一起,接相同的果子不同颜色,我在树下摘着吃 ? 梦见床旁边有两棵树 如何购买基金,需要开户吗,在哪个银行购买,最低购买多少? 请问中国农业银行代理的哪只基金较好. 我看好华夏的基金,可为什么它的净值都那么高? 做为大学生投资哪种金融产品比较好? 华夏行业精选基金现在净值是多少,现在还能申购吗? 管理系统中BI、EAM、PLM、ERP、CRM、DRP、OA、SCM、EAM缩略语。 别克君越空调电磁阀坏了怎么办 别克君越凸轮轴电磁阀影响油耗吗? 别克-君越 - 别克新君越变速箱电磁阀问题 别克君越喷油嘴使用寿命? 君越排气电磁阀功能何用? 别克君越v6vvt电磁阀什么时候打开 别克新君越豪雅突轮轴电磁阀为什么容易坏 OA中固定资产模块与EAM的区别是什么? 伞的做法折纸 AM和EAM,到底有什么不一样啊? 新君越排气凸轮轴电磁阀多少公里一换 梦见两棵树成十字倒在地上 C语言中二叉树的建立和遍历 求一个用C语言写的建立二叉树。并且先序中序后序遍历这个二叉树 降血糖药物有哪些是没有副作用的呢 降血糖的药吃了有什么副作用 支付宝上面马上借钱,申请通过多久放款 真心空气能热水器怎么调温度 可以使嘴唇颜色变色的唇彩?? 梦见自己在家里客厅里挖出了好多5块钱地港币和现金怎么会事? 梦见从地下挖出现金和鸡蛋 考BEC还是托业好呢!? 怎样截图?截频? SQLITE中,如何合并多条记录的数据到一条记录的不同列中 电磁炉的工作原理是什么 win10联想一键恢复怎么用 住海边,榉木床,像木床,松木床哪一种比较好,家具哪一种抗潮湿 ? 南方的空气潮湿,木质的家具容易受潮吗? 请问哪种木材适合家具。特性要求:防虫,防暴晒,耐潮湿,硬度高,防腐,无特殊气味,尤其是不能有香气! 如何清洁榉木家具 实木家具如何应对潮湿的梅雨季?