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

给定一棵用二叉链表表示的二叉树,其根指针为root,试写出求二叉树结点的数目的算法。

提问人:网友18***469 发布时间:2022-01-07
参考答案
查看官方参考答案
如搜索结果不匹配,请 联系老师 获取答案
更多“给定一棵用二叉链表表示的二叉树,其根指针为root,试写出求…”相关的问题
第1题
设二叉树采用二叉链表方式存储,root指向根结点,r所指结点为二叉树中任一给定的结点。则可以通过改写( )算法,求出从根结点到结点r之间的路径。

A、先序遍历

B、中序遍历

C、后序遍历

D、层次遍历

点击查看答案
第2题
阅读以下说明、C函数和问题,将解答填入答题纸的对应栏内。【说明】二叉查找树又称为二叉排序树

阅读以下说明、C函数和问题,将解答填入答题纸的对应栏内。

【说明】

二叉查找树又称为二叉排序树,它或者是一棵空树,或者是具有如下性质的二叉树:

●若它的左子树非空,则其左子树上所有结点的键值均小于根结点的键值;

●若它的右子树非空,则其右子树上所有结点的键值均大于根结点的键值;

●左、右子树本身就是二叉查找树。

设二叉查找树采用二叉链表存储结构,链表结点类型定义如下:

typedefstructBiTnode{

intkey_value;/*结点的键值,为非负整数*/

structBiTnode*left,*right;/*结点的左、右子树指针*/

}*BSTree;

函数find_key(root,key)的功能是用递归方式在给定的二叉查找树(root指向根结点)中查找键值为key的结点并返回结点的指针;若找不到,则返回空指针。

【函数】

BSTreefind_key(BSTreeroot,intkey)

{

if((1))

returnNULL;

else

if(key==root->key_value)

return(2);

elseif(keykey_value)

return(3);

else

return(4);

}

【问题1】

请将函数find_key中应填入(1)~(4)处的字句写在答题纸的对应栏内。

【问题2】

若某二叉查找树中有n个结点,则查找一个给定关键字时,需要比较的结点个数取决于(5).

点击查看答案
第3题
给定一棵用二叉链表表示的二叉树,其根指针为root,试写出求二叉树的深度的算法。

点击查看答案
第4题
设二叉树以二叉链表方式存储,试编写求解下列问题的递归算法。 设二叉树结点和二叉树结构体定义如下: typedef struct btnode { ElemType element; struct btnode* lchild, *rchild; }BTNode; typedef struct binarytree{ BTNode* root; }BinaryTree; (1)求一棵二叉树的高度; (2)求一棵二叉树中的结点个数; (3)交换一棵二叉树中每个结点的左、右子树。
点击查看答案
第5题
含有n个结点的二叉树用二叉链表表示时,空指针域个数为()
A.n-1

B.n

C.n+1

D.n+2

点击查看答案
第6题
二叉树以二叉链表存储,若指针p指向二叉树的根结点,经过运算s=p;while(s->rchild)s=s->rchild后,则(  )。

A.s指向二叉树的最右下方的结点 B.s指向二叉树最左下方的结点

C.s指向根结点  D.s为NULL

点击查看答案
第7题
一棵具有n个结点的二叉树对应的二叉链表中,有( )个指针域是空的。

A、n-1

B、n+1

C、n(n-1)/2

D、n(n+1)/2

点击查看答案
第8题
假设以带双亲指针的二叉链表作为-二叉树的存储结构,其结点结构的类型说明如下所示:

typedef char DataType;

typedef struct node{

DataType data;

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

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

}BinTNode;

typedef BinTNode*BinTree;

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

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

点击查看答案
第9题
以下是用类C语言写出的算法,该算法将以二叉链表存储的二叉树中的叶子结点按从左到右的顺序链成一个带头结点的双向循环链表,链接时,结点的Lchild域作为前链域,指向结点的直接前驱,结点的Rchild域作为后链域,指向结点的直接后继。算法中,使用一个顺序栈stack,栈顶指针为top,P、t为辅助指针,head为双向循环链表的头指针。试填充算法中的空格,以完整算法。 void leafchain(BiTree&bt) {p=(BiTree)malloc(sizeof(BiTNode));
点击查看答案
账号:
你好,尊敬的用户
复制账号
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
欢迎分享答案

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

简答题官方微信公众号

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

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

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