首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1.2k一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1.2k一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
admin
2019-01-16
37
问题
已知深度为h的二叉树采用顺序存储结构已存放于数组BT[1.2
k
一1]中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由T给出。
选项
答案
二叉树采用顺序存储结构(一维数组)是按完全二叉树的形状存储的,不是完全二叉树的二叉树顺序存储时,要加“虚结点”。数组中的第一个元素是根结点。本题中采用队列结构。 typedef struct{ BiTree bt; //二叉树结点指针 int num; }tnode; //num是结点在一维数组中的编号 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=l; 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->lehild;tq.num=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.num=2*i+1; rear=(rear+1)%maxsize;Q[rear]=tq; //计算队尾位置,右子女及其编号入队 } }//while }
解析
转载请注明原文地址:https://kaotiyun.com/show/5lRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
宋代由于旧坊制被打破,城市中行业分区性逐渐消失,北宋政府通过()来控制商人和商业。
纳粹德国公开撕毁《凡尔赛和约》的步骤有()。①大量扩展陆军,重建空军,建造军舰②迫害犹太人③退出国联④开进莱茵非军事区
简述格拉古兄弟改革的主要内容和历史意义。
阅读材料,回答以下问题:重庆中央党部,暨中央执监委员诸同志均鉴:今年4月,临时全国代表大会宣言,说明此次抗战之原因,曰:“自塘沽协定以来,吾人所以忍辱负重与倭国周旋,无非欲停止军事行动,采用和平方法,先谋北方各省之保全,再进而谋东北四省问题之合理解决,
以下不属于国民党控制金融的“四行”的是()。
两汉时期,下列没有通过丝绸之路传入西方的技术是()。
现存迈锡尼线形文字B的材料绝大多数叙述的是迈锡尼的()
美国历史上第一个具有宪法性质的文件是()。
电子计算机的发展经过了:①电子数值积分计算机(ENIAC)②集成电路计算机③大规模集成电路汁算机④晶体管计算机⑤人工智能计算机其先后顺序是()。
随机试题
血源性肺脓肿首选
乳牙或恒牙早失的临床表现不包括
全口义齿的平衡是指
A.风淫证B.暑淫证C.寒淫证D.湿淫证E.燥淫证脘腹痞胀,口淡不渴,肠鸣腹泻,苔白滑,脉沉细的临床意义是
某施工工地升降机操作工刘某未注意下方有人即按启动按钮,造成维修工张某当场被挤压身亡。刘某报告事故时隐瞒了自己按下启动按钮的事实。关于刘某行为的定性,下列哪一选项是正确的?
施工导流标准与()直接相关。
下列土层中,采用高压喷射注浆加固,效果最好的是()。
比较定期交易系统和连续交易系统,下列说法正确的有( )。
下列对于古代称谓说法错误的是()。
It’ssummer.IntheUnitedStates,it’stheseasonofswimmingpools,barbeques,campingandroadtrips.Roadtripvacations
最新回复
(
0
)