首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1.2h一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1.2h一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
admin
2019-08-01
66
问题
已知深度为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.num=1; Q[1]:tq; //根入队列 front=0;rear=1; //循环队列头、尾指针 while(front!=rear){ //当队列不空时循环 front=(front+1)%maxsize; tq=Q[front];p=tq.bt;i=tq.num; //出队,取出结点及编号 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+l>len)p一>rchild=null; //右子树为空 else{//建立右子女结点并入队列 p一>rchild=(BiTree)malloc(sizeof(BiNode); //申请结点空间 p一>rchild一>data=BT[2*i+1];tq.bt=p一>rchild;tq.Bum=2*i+1; rear=(Fear+1)%maxsize;Q[rear]=tq: //计算队尾位置,右子女及其编号入队 } }//while } 提示:本题中的虚结点用‘#’表示,应根据二叉树的结点数据的类型而定。
解析
转载请注明原文地址:https://www.kaotiyun.com/show/qCCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
试论雅尔塔体制与冷战起源的关系。
20世纪五六十年代经济高速增长时期,西欧经济增长最快的国家是()。
东欧剧变的根本原因是()。
中国民族工业产生后,多集中于沿海地区,其主要原因是()。
严复翻译的《天演论》一书的出版时间是()。
斯大林时期的经济体制最本质的特点是()。
戊戌政变发生的时间是()。
国民党政府宣布民盟为“非法团体”,民盟总部被迫解散的时间是()。
(1)以太网采用了曼彻斯特编码,一个比特的数据需要两个信号来传输,那么为了达到100Mbps的数据传送速率,需要线路达到200Mbps的带宽。(2)以太网的最小帧长度是64字节,那么发送一个最小帧需要的时间T1=64×8/(100×106),
举例说明P、V操作为什么要求设计成原语(即对同一信号量上的操作必须互斥)。P(S)操作:S.value--;If(S.value<0){AddthisprocesstoS.L;Block();
随机试题
A.脾肾阳虚证B.肝郁脾虚证C.脾虚气陷证D.脾肾气虚证(2011一89,90题)肛门气坠所属的证候是()
四物汤与归脾汤共有的药是
A.99mTc-DTPAB.邻-131I马尿酸钠C.131I-6-碘代胆固醇D.99mTc-DMSAE.以上都不正确最常用的肾小球滤过型肾动态显像的显像剂是
以下哪一法律职业人员的行为不违反法律职业道德基本准则?()
以募集方式设立的股份有限公司,发起人认购的股份不得少于公司股份总数的()
已实现收益能很好地反映基金的经营成果。()
国际税收协定的基本内容主要包括()。
从事信贷、租赁的外商投资企业可以逐年按照年末放贷余额的()以内,计提坏账准备。
排列顺序。例如:A可是今天起晚了B平时我骑自行车上下班C所以就打车来公司BACA他们不想要孩子B因为培养一个孩子需要很多钱C这主要是由于收入低
A、Theypunishthosewhointendtodojob-hopping.B、Theyencouragethemtomaketheirownchoice.C、Theysettightrulesandoff
最新回复
(
0
)