首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2K一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(1child,data,rchild),根结点所在链结点的指针由T给出。
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2K一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(1child,data,rchild),根结点所在链结点的指针由T给出。
admin
2019-08-15
55
问题
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1..2
K
一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(1child,data,rchild),根结点所在链结点的指针由T给出。
选项
答案
二叉树采用顺序存储结构(一维数组)是按完全二叉树的形状存储的,不是完全二叉树的二叉树顺序存储时,要加“虚结点”。数组中的第一个元素是根结点。本题中采用队列结构。 typeclef struct { BiTree bt: //二叉树结点指针 int num; }tnode: //num是结点在一维数组中的编号 tnode Q[maxsize]; //循环队列,容量足够大 void creat(BiTree T,ElemType BT[]){ //深度h的二叉树存于一维数组BT[1..2
k
一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]=='#'∣∣112*i>len)p->lchild=null; //左子树为空,'#'表示虚结点 else{ //建立左子女结点并入队列 p一>lchild=(BiTree)malloc(sizeof(BiNode)); //申请结点空间 P一>lchild一>data=BT[2*i]; //左子女数据 tq.bt=p一>lchild;tq.num=2*i;real=(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: real=(real+1)%maxsize;Q[rear]=tq; //计算队尾位置,右子女及其编号入队 } }//while } 提示:本题中的虚结点用'#'表示,应根据二叉树的结点数据的类型而定。
解析
转载请注明原文地址:https://kaotiyun.com/show/BcCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
制瓷业是光彩夺目的一个手工业部门,北宋的制瓷业的重心在黄河流域和中原地区。回答问题:()创于唐,盛于北宋,以白瓷著名,为宋代印花白瓷的精品
下列内容,与垄断组织出现有关的是()。①控制一个或几个部门商品的生产、价格和市场②促进了大工业的发展,在某种程度上适应了生产力发展的需要③干预、控制国家的政治、经济生活④积极向外扩张,从经济上瓜分世界
中国共产党在大革命失败后,根据中国革命的新特点,明确了“工农武装割据”的思想,其核心内容不包括()。
假设系统的所有资源是同类型的,系统中的进程每次申请资源数最多1个,那么,下面列出的4种情况中,()可能发生死锁。情况序号系统中进程数资源总量
给定单链表的结点结构typedefstructnode*link;structnode{intitem,linknext;);将两个升序单链表归并为一个升序单链表。
某计算机字长16位,采用16位定长指令字结构,部分数据通路结构如下图所示。图中所有控制信号为1时表示有效、为0时表示无效。例如控制信号MDRinE为1表示允许数据从DB打入MDR,MDRin为1表示允许数据从内总线打入MDR。假设MAR的输出一直处于使能状
已知二叉树采用二叉链表方式存放,要求返回二叉树T的后序序列中的第一个结点的指针,是否可不用递归且不用栈来完成?请简述原因。
试就MutualExclusion、Progress、BoundedWaiting论述以下解决双进程临界区问题的算法是错误的:ProcessPO:do{flag[O]=true;While(flag[1]);Cri
下列关于批处理技术和多道程序设计技术说法中,正确的是()。Ⅰ.批处理系统的最主要缺点是不能并发执行Ⅱ.所谓多道程序设计,是指每一个时刻有若干个进程在执行Ⅲ.引入多道程序设计的前提条件之一是系统具有中断功能Ⅳ.采用多道程序设计的系统中,系统的
试比较脱机I/O和联机I/O。
随机试题
在三角形连接的对称电源或负载中,线电流滞后相电流30°。()
对于票据金额文字记载与数字记载不、致的情形,我国《票据法》规定应以何为准?()。
下列各项中,凡在我国境内新建,扩建,改建的()等工程,都实行竣丁验收备案制度。
跟单员通过分析财务会计审计报告可了解企业的财务状况,其由什么组成()
甲被依法宣告失踪,乙为甲的财产代管人。下列选项中,由乙从甲的财产中支付的有()(2017年非法学基础课多选第46题,2017年法学基础课多选第26题)
在科层制的组织结构中,领导者的最佳控制幅度取决于()。
8237A肓______个完全独立的DMA通道。
A、B、C、D、D
StressCanMakeYouSickScientistsarenowstudyinganewfieldofresearchwhichiscalledpsychoimmunology(心理免疫学).Itisb
A、 B、 C、 B
最新回复
(
0
)