题目内容 (请给出正确答案)
[主观题]

设二叉树以二叉链表方式存储,试完成下列问题的递归算...

设二叉树以二叉链表方式存储,试完成下列问题的递归算法。 设二叉树结点和二叉树结构体定义如下: typedef struct btnode { ElemType element; struct btnode* lchild, *rchild; }BTNode; typedef struct binarytree{ BTNode* root; }BinaryTree; (1)求一棵二叉树的高度; int Depth(BTNode *p) { int lh, rh; if (!p) return 0; lh = ______________; rh = _____________; if (lh > rh) return _________; else return ________; } int DepthofBT(BinaryTree Bt) { return ___________; } (2)求一棵二叉树中的结点个数; int Size(BTNode * p) { if (!p) return _____ ; else return Size(p->lchild)+______________+1; } int SizeofBT(BinaryTree Bt) { return ______________); } (3)交换一棵二叉树中每个结点的左、右子树。 void exchange (BTNode * p) { if(!p) return; if (p->lchild != NULL || p->rchild != NULL ) { temp = p->lchild; p->lchild = ____________; p->rchild = temp; exchange (___________ ); exchange (p->rchild ); } } void exchange(BinaryTree *bt) { ____________________; }

暂无答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“设二叉树以二叉链表方式存储,试完成下列问题的递归算...”相关的问题

第1题

设二叉树以二叉链表存储,试编写求解下列问题的递归算法。 (1)求一棵二叉树的高度; (2)求一棵二叉树中的结点个数; (3)交换一棵二叉树中每个结点的左、右子树。
点击查看答案

第2题

设二叉树以二叉链表方式存储,试编写求解下列问题的递归算法。 设二叉树结点和二叉树结构体定义如下: typedef struct btnode { ElemType element; struct btnode* lchild, *rchild; }BTNode; typedef struct binarytree{ BTNode* root; }BinaryTree; (1)求一棵二叉树的高度;
点击查看答案

第3题

设二叉树采用二叉链表存储,下面递归函数用于计算二叉树的叶子数量。请在空格处完善代码,实现函数功能。 typedef struct BiTNode { // 结点结构 TElemType data; struct BiTNode *lchild, *rchild; // 左右孩子指针 } BiTNode, *BiTree; int CalcLeaves ( 1 T){ /* 计算叶子结点的数量*/
点击查看答案

第4题

假设二叉树采用二叉链表进行存储,设计一个算法,计算一棵给定的二叉树b中的所有叶结点个数。(提示:参考P212例7.11和P214例7.12,利用递归思想,进行编程。) int CountLeaf(BTNode *b) {}
点击查看答案

第5题

对于任意非空二叉树,要设计出其后序遍历的非递归算法而不使用堆栈结构,最合适的方法是对该二叉树采用(43)存储结构。

A.三叉链表

B.二叉链表

C.顺序

D.索引

点击查看答案

第6题

算法题: 设二叉树的存储结构采用二叉链表,并假设二叉树中结点的值互不相同。编写递归算法:在root为根的二叉树下,判断值为x的结点所在的层次。假设根结点所在层次为1,它的孩子结点层次为2,以此类推。如果没有找到值为x的结点,则返回0。
点击查看答案

第7题

编写递归算法,求以二叉链表存储的二叉树的深度。

点击查看答案

第8题

所有分支结点的度为2的二叉树称为正则二叉树,试用二叉链表做存储结构,编写一递归 函数int FormalTree(Bitree t),判断二叉树是否为正则二叉树。【北京理工大学2005四、2(5分)】

点击查看答案

第9题

试编写算法交换以二叉链表做存储结构的二叉树中所有结点的左、右子树。
点击查看答案

第10题

设二叉树采用二叉链表作为存储结构。试用类Pascal语言实现按前序遍历顺序输出二又树中结点的非递归算法。要求定义所用结构。设栈已经定义:inits(S),empty(S),push(S,P),pop(S),top(S)分别为栈初始化,判栈空,入栈,出栈,看栈顶等操作。【北京工业大学1997二、1(10分)】

点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信