首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2h一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2h一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
admin
2019-01-16
78
问题
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2
h
一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
选项
答案
二叉树采用顺序存储结构(一维数组)是按完全二叉树的形状存储的,不是完全二叉树的二叉树顺序存储时,要加“虚结点”。数组中的第一个元素是根结点。本题中采用队列结构。 typedef struct{ BiTree bt: //二叉树结点指针 int Bum; }tnode; //Bum是结点在一维数组中的编号 tnode Q[maxsize]; //循环队列,容量足够大 void creat(BiTree T,ElemType BT[]){ //深度h的二叉树存于一维数组BT[1..2
h
一1]中 //本算法生成该二叉树的二叉链表存储结构 tnode tq; //tq是队列元素 int len,i: //数组长度 len=strlen(BT); T=(BiTree)malloc(sizeof(BiNode));//申请结点 T一>data=BT[1]; //根结点数据 tq.bt=T;tq.nun=1; Q[1]=tq; //根入队列 front=0;rear=1; //循环队列头、尾指针 while(front!=rear){ //当队列不空时循环 front=(front+1)%maxsize: tq=Q[front];P=tq.bt;i=tq.nun; //出队,取出结点及编号 if(BT[2*i]==’#’||2*i>len)p->lchild=null; //左子树为空,’#’表示虚结点 else{ //建立左子女结点并入队列 p一>lchild=(BiTree)malloc(sizeof(BiNode)); //申请结点空间 P一>lchild一>data=BT[2*i]; //左子女数据 tq.bt=p一>lchild;tq.Bum=2*i;rear=(rear+1)%maxsize; //计算队尾位置 Q[rear]=tq; //左子女结点及其编号入队 } if(BT[2*i+1]==’#’||2*i+1>len)p一>rchild=null; //右子树为空 else{//建立右子女结点并入队列 P一>rchild=(BiTree)malloc(sizeof(BiNode); //申请结点空间 P一>rchild一>data=BT[2*i+1];tq.bt=p->rchild;tq.nun=2*i+1: rear=(rear+1)%maxsize;Q[rear]=tq; //计算队尾位置,右子女及其编号入队 } }//while }
解析
转载请注明原文地址:https://kaotiyun.com/show/YYRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1543年发表解剖学专著《人体结构论》的是()。
阅读材料,回答问题:材料一:战后美国对一些新兴工业部门、重大科研项目、现代化公共设施等投入大量资金,如美国时发展原子能工业的投资,从1945年到1970年共计达175亿美元。美国还通过国家力量来扩张国外市场,从50年代中期起,为加强国际市场的竞争力,政府
明朝灭亡后,以下南明小朝廷存在的先后顺序是()。①绍武政权②永历政权③隆武政权④弘光政权
“二战”后,美国以经济手段扶植和控制西欧的表现是()。
下列哪些机构是唐朝设立的管理新疆地区的机构?()①伊犁将军②乌里雅苏台将军③北庭都护府④安西都护府
希腊雅典城邦的“民众法庭审判官由公民抓签选出,任期只有一年,每个公民一生中只能担任两次审判官的职务”。此规定()。
1861年俄国废除农奴制改革的主要作用是()。①造成资本集中②扩大了国内市场③增加了自由劳动力④强化了中央集权
()是清代管理边疆少数民族地区事务的机关,也掌管一部分外交事务。
在二叉树的顺序存储中,每个结点的存储位置与其父结点、左右子树结点的位置都存在一个简单的映射关系,因此可与三叉链表对应。若某二叉树共有n个结点,采用三叉链表存储时,每个结点的数据域需要d个字节,每个指针域占用4个字节,若采用顺序存储,最后一个结点下标为k(起
比较IEEE802.11使用的CSMA/CA与IEEE802.3使用的CSMA/CD之间的区别。
随机试题
商品保管合同是一种经济合同,它是__________和___________为了加速商品流通,妥善保管商品,提高经济效益而签订的明确相互权利、义务关系的协议。
真理的相对性是指真理的()
需留置导尿管的患者是
青霉素不能用于治疗
A、第一阶梯轻度疼痛用药B、第二阶梯中度疼痛用药C、第三阶梯重度疼痛用药D、1级疼痛用药E、2级疼痛用药阿司匹林为
患者,男,57岁。突发意识障碍,血压180/110mmHg,头痛,呕吐,出现右侧肢体偏瘫,脑CT示脑内有高密度区。患者诊断为
A、缓者朝发夕死,重者顷刻而亡B、五疫之至,皆相染易C、众人之病相同D、凡四时之令不正者,乃有此气行也E、夫疫者,感天气之戾气也……多见于兵荒之岁体现疠气传染性强的是
采空区形成地表移动盆地,其位置和形状与矿层倾角大小有关,当矿层为急倾斜时,下列()叙述是正确的。[2005年真题]
微笑是无声的欢迎辞,微笑是无形的友谊之手,微笑是自信的象征,微笑是和睦相处的反映。()
A、Chooseothertime.B、Chooseanotherbank.C、Pullthroughthecrowds.D、Cometothebankinthemorning.A对话中男士提到Thebankisso
最新回复
(
0
)