重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
当前位置: 首页 > 大学本科
网友您好, 请在下方输入框内输入要搜索的题目:
搜题

题目

[主观题]

在森林的二叉树表示中,用llink存储指向结点第一个子女的指针,用rlink存储指向结点下一个兄弟

的指针,用data存储结点的值。如果我们采用静态二叉链表作为森林的存储表示,同时按森林的先根次序依次安放森林的所有结点,则可以在它们的结点中用只有一个二进位的标志Itag代替Ilink,用rtag代替rlink。并设定若Itag=0,则该结点没有子女,若Itag≠0.则该结点有子女;若rtag=0,则该结点没有下一个兄弟,若rtag不等于0.则该结点有下一个兄弟。试给出这种表示的结构定义,并设计一个算法,将用这种表示存储的森林转换成用Ilink-rIlink表示的森林。

查看参考答案
更多“在森林的二叉树表示中,用llink存储指向结点第一个子女的指针,用rlink存储指向结点下一个兄弟”相关的问题

第1题

二叉树结点数值采用顺序存储结构,如图所示。 ①画出二叉树表示。 ②写出前序遍历,中序遍历和后序遍历的结果

二叉树结点数值采用顺序存储结构,如图所示。

二叉树结点数值采用顺序存储结构,如图所示。    ①画出二叉树表示。  ②写出前序遍历,中序遍历和后

①画出二叉树表示。

②写出前序遍历,中序遍历和后序遍历的结果。

③写出值为c的结点的父结点及其左、右孩子。

④画出把此二叉树还原成森林的图。

点击查看答案

第2题

33、讨论树、森林和二叉树的关系,目的是________。

A.将树、森林按二叉树的存储结构进行存储,并利用二叉树的算法解决树与森林的有关问题

B.将树、森林转化成二叉树,统一逻辑表示形式

C.只是为了方便定义树、森林的遍历方法

D.体现一种技巧,没有什么实际意义

点击查看答案

第3题

若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树有__________个指针是空指针
点击查看答案

第4题

若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树有__________个指针是空指针。
点击查看答案

第5题

若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树有__________个指针是空指针
点击查看答案

第6题

若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。在这种存储结构中,n个结点的二叉树有__________个指针是空指针
点击查看答案

第7题

阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。【说明】 已知某二叉树的非叶子结点都有两

阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。

【说明】

已知某二叉树的非叶子结点都有两个孩子结点,现将该二叉树存储在结构数组Ht中。结点结构及数组Ht的定义如下:

define MAXLEAFNUM 30

struct node{

char ch; /*当前结点表示的字符,对于非叶子结点,此域不用*/

char *pstr; /*当前结点的编码指针,非叶子结点不用*/

int parent; /*当前结点的父结点,为0时表示无父结点*/

int lchild,rchild;

/*当前结点的左、右孩子结点,为0时表示无对应的孩子结点*/

};

struct node Ht[2*MAXLEAFNUM]; /*数组元素Ht[0]不用*/

该二叉树的n个叶子结点存储在下标为1~n的Ht数组元素中。例如,某二叉树如果其存储结构如下图所示,其中,与叶子结点a对应的数组元素下标为1,a的父结点存储在Ht[5],表示为Ht[1].parent=5。Ht[7].parent=0表示7号结点是树根,Ht[7].child=3、Ht[7].rchild=6分别表示7号结点的左孩子是3号结点、右孩子是6号结点。

阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。【说明】 已知某二叉树的非叶子结点都有两阅

如果用0或1分别标识二叉树的左分支和右分支(如上图所示),从根结点开始到叶子结点为止,按所经过分支的次序将相应标识依次排列,可得到一个0、1序列,称之为对应叶子结点的编码。例如,上图中a,b,c,d的编码分别是100,101,0,11。

函数LeafCode(Ht[],n)的功能是:求解存储在Ht中的二叉树中所有叶子结点(n个)的编码,叶子结点存储在Ht[1]~Ht[n]中,求出的编码存储区由对应的数组元素pstr域指示。

函数LeafCode从叶子到根逆向求叶子结点的编码。例如,对上图中叶子结点a求编码的过程如下图所示。

阅读以下说明和C函数,将应填入(n)处的字句写在对应栏内。【说明】 已知某二叉树的非叶子结点都有两阅

typedef enum Status {ERROR,OK} Status;

【C函数】

Status LeafCode(struct node Ht[], int n)

{

int pc, pf; /*pc用于指出树中的结点,pf则指出pc所对应结点的父结点*/

int i,start;

char tstr[31] = {'\0'}; /*临时存储给定叶子结点的编码,从高下标开始存入*/

for(i = 1;(1); i++){ /*对所有叶子结点求编码,i表示叶结点在HT数组中的下标*/

start = 29;

pc = i; pf = Ht[i].parent;

while (pf !=(2)) { /*没有到达树根时,继续求编码*/

if ((3).lchild == pc ) /*pc所表示的结点是其父结点的左孩子*/

tstr[--start] = '0';

else

tstr[--start] = '1';

pc =(4); pf = Ht[pf].parent; /*pc和pf分别向根方向回退一层*/

}/* end of while */

Ht[i].pstr = (char *) malloc(31-start);

if (!Ht[i].pstr) return ERROR;

strcpy(Ht[i].pstr,(5));

}/* end of for */

return OK;

}/* and of LeafCode */

点击查看答案

第8题

用链表(lchild-rchild表示法)存储的包含n个结点的二叉树,结点的2n个指针域中有n+l个空指针。(

用链表(lchild-rchild表示法)存储的包含n个结点的二叉树,结点的2n个指针域中有n+l个空指针。()

点击查看答案
赏学吧APP
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

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

- 微信扫码关注赏学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反赏学吧购买须知被冻结。您可在“赏学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注赏学吧 -
请用微信扫码测试
温馨提示
每个试题只能免费做一次,如需多次做题,请购买搜题卡
立即购买
稍后再说
赏学吧