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

以二叉链表作为二叉树的存储结构,设计算法:计算拥有左孩子的结点的数量并写出函数实现。二叉链表结点定义如下: typedef struct node{ElemType data; sturct node * lchild,* rchild;}node, *ptr, *BiTree;

A、int LCC(BiTree T) { if(T==NULL) return 0; if(T->lchild != NULL && T->rchild==NULL) return 1 + LCC(T->lchild) ; }

B、int LCC(BiTree T) { if(T==NULL) return 0; if(T->lchild != NULL && T->rchild==NULL) return 1 + LCC(T->lchild) + LCC(T->rchild); else return LCC(T->rchild); }

C、int LCC(BiTree T) { if(T==NULL) return 0; if(T->lchild != NULL) return 1 + LCC(T->lchild) + LCC(T->rchild); else return LCC(T->rchild); }

D、int LCC(BiTree T) { if(T==NULL) return 0; if(T->lchild != NULL) return 1 + LCC(T->lchild) ; else return 1+LCC(T->rchild); }

提问人:网友willlxf 发布时间:2022-01-07
参考答案
查看官方参考答案
如搜索结果不匹配,请 联系老师 获取答案
更多“以二叉链表作为二叉树的存储结构,设计算法:计算拥有左孩子的结…”相关的问题
第1题
以二叉链表作为二叉树的存储结构,编写以下算法:(1)统计二叉树的叶结点个数。(2)设计二叉树的双
以二叉链表作为二叉树的存储结构,编写以下算法:

(1)统计二叉树的叶结点个数。

(2)设计二叉树的双序遍历算法(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次访问这个结点,接下来按双序遍历它的右子树)。

(3)计算二叉树最大的宽度(二叉树的最大宽度是指二叉树所有层中结点个数的最大值)。

(4)用按层次顺序遍历二叉树的方法,统计树中具有度为1的结点数目。

(5)求任意二叉树中第一条最长的路径长度,并输出此路径上各结点的值。

(6)输出二叉树中从每个叶子结点到根结点的路径。

点击查看答案
第2题
某二叉链表存储的二叉树中,分别统计度0,度为1和度为2的结点个数。
点击查看答案
第3题
编写算法,在以二叉链表存储的二叉树中,编写算法实现交换二叉树各结点的左右子树。
点击查看答案
第4题
假设以带双亲指针的二叉链表作为-二叉树的存储结构,其结点结构的类型说明如下所示:

typedef char DataType;

typedef struct node{

DataType data;

struct node*lchild,*rchild; //左右孩子指针

struct node*parent; //指向双亲的指针

}BinTNode;

typedef BinTNode*BinTree;

若px为指向非空二叉树中某个结点的指针,可借助该结构求得px所指结点在二叉树的中序序列中的后继。

1. 就后继的不同情况,简要叙述实现求后继操作的方法;

点击查看答案
第5题
以二叉链表作为二叉树的存储结构,在具有n个结点的二叉链表中(n>0),空链域的个数为(  )。

A.2n-1  B.n-1  C.n+1  D.2n+1

点击查看答案
第6题
二叉树以二叉链表存储,写出对二叉树进行先序遍历的非递归算法。

解题思路:二叉树的先序遍历非递归算法利用栈结构,从二又树的根结点开始,输出结点信息,同时将结点指针入栈,然后顺着左子树,依次将其左子树各个结点值输出,同时结点指针入栈,直到左子树为空;然后让栈顶指针出栈,接着处理右子树。

点击查看答案
第7题
统计某二叉链表存储的二叉树中的叶子结点个数,以下代码正确的是( )。

A、int leaf=0; void LeafCount(BiTree bt) { if(bt==NULL) return; if(bt->L==NULL && bt->R==NULL) leaf++; LeafCount(bt->L); LeafCount(bt->R); }

B、int leaf=0; void LeafCount(BiTree bt) { if(bt==NULL) return; LeafCount(bt->L); if(bt->L==NULL && bt->R==NULL) leaf++; LeafCount(bt->R); }

C、int leaf=0; void LeafCount(BiTree bt) { if(bt==NULL) return; LeafCount(bt->L); LeafCount(bt->R); if(bt->L==NULL && bt->R==NULL) leaf++; }

D、int leaf=0; void LeafCount(BiTree bt) { if(bt->L==NULL && bt->R==NULL) leaf++; LeafCount(bt->L); LeafCount(bt->R); }

点击查看答案
第8题
假设二叉树采用二叉链表的存储结构存储,请编写一个算法,求一个二叉树中的结点的最大值。要求: (1)提供以自然语言方式描述的算法设计思想。 (2)提供类C语言描述的算法。
点击查看答案
第9题
若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用( )遍历方法最合适。【北京航空航天大学1999一、4(2分)】

A.前序

B.中序

C.后序

D.按层次

点击查看答案
账号:
你好,尊敬的用户
复制账号
发送账号至手机
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

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

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

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