首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2h-1]中,请写一非递归算法,产生该二叉树的二又链表结构。设二又链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2h-1]中,请写一非递归算法,产生该二叉树的二又链表结构。设二又链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
admin
2019-08-01
29
问题
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2
h
-1]中,请写一非递归算法,产生该二叉树的二又链表结构。设二又链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
选项
答案
二叉树采用顺序存储结构(一维数组)是按完全二叉树的形状存储的,不是完全二叉树的二叉树顺序存储时,要加“虚结点”。数组中的第一个元素是根结点。本题中采用队列结构。 typedef struct{ BiTree bt: //-叉树结点指针 int num; }tnode: //aura是结点在一维数组中的编号 tnode Q[maxsize]; //循环队列,容量足够大 void creat(BiTree T,ElemType BT[]){ //深度h m-Y-树存于一维数组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.hum; //出队,取出结点及编号 if(BT[2*i]==’#’.||2*i>len) p一>lehild=null; //左子树为空,’#’表示虚结点 else{ //建立左子女结点并入队列 p一>lchild=(BiTree)malloc(sizeof(BiNode)); //申请结点空间 P一>lchild一>data=BT[2*i]; //左子女数据 tq.bt=p一>lehild:tq.hum=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.num=2*i+l; rear=(rear+1)%maxsize;Q[rear]=tq;//计算队尾位置,右子女及其编号入队 } }//while }
解析
转载请注明原文地址:https://jikaoti.com/ti/ZDGjFFFM
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
试述“百家争鸣”的社会背景及主要原因。
下列历史事件发生的先后顺序是()。①“铁幕”演说②马歇尔计划③北大西洋公约
试述西欧城市兴起的原因、方式及其影响。
下列哪一个不是罗马王政时代的管理机构?()
全国高校院系调整的时间是()。
国民党政府宣布民盟为“非法团体”,民盟总部被迫解散的时间是()。
一个在以太网中的主机试图发送一个帧,当它尝试了16次仍然失败之后,它应该()。
指令系统字长16位,每个地址码为6位,采用扩展操作码的方式,试设计14条二地址指令,100条一地址指令,100条零地址指令。(1)画出操作码的扩展形式。(2)下图为指令译码逻辑图,其中只给出了二地址指令的译码逻辑,试补全一地址指令和零地址指令的
两个进程P、Q都需要三个资源1,2,3,系统中有资源1、2、3各一个,如果P请求资源的顺序是1、2、3,Q请求资源的顺序任意,共有3!=6种排列,其中共有()个排列可能导致死锁。
计算机系统中,判断是否有中断事件发生的时机是()。
随机试题
Whenaconsumerfindsthatanitemsheorheboughtisfaultyorinsomewaydoesnotliveuptothemanufacturer’sclaimforit
同一债权既有保证又有债务人提供的物的担保的,()。A.由保证人先行承担保证责任B.保证人不再承担保证责任C.保证人仅对物的担保以外的债权承担保证责任D.该债权受双重担保
外伤性颅内血肿形成后,其严重性在于
十二经的络穴皆位于
直接影响房屋的合理使用和购房者的生命财产安全最主要的是()。
消防验收现场检查主要是核查工程实体是否符合经审核批准的消防设计,其内容包括()等。
政府对建设工程质量监督的职能是()。
当经济发展缓慢或处于低潮时,增加社会保障开支()。
用户开发应用系统的主要手段是()。
Completethenotesbelow.WriteNOMORETHANTWOWORDSAND/ORANUMBERforeachanswer.AnOverviewofTheResearchonAmberAmb
最新回复
(
0
)