首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假定用两个一维数组L[N]和R[N]作为有N个结点1,2,…,N的二叉树的存储结构。L[i]和R[i]分别指示结点i的左儿子和右儿子;L[i]=0(R[i]=0)表示i的左(右)儿子为空。试写一个算法,由L和R建立一个一维数组T[n],使T[i]存放结点i
假定用两个一维数组L[N]和R[N]作为有N个结点1,2,…,N的二叉树的存储结构。L[i]和R[i]分别指示结点i的左儿子和右儿子;L[i]=0(R[i]=0)表示i的左(右)儿子为空。试写一个算法,由L和R建立一个一维数组T[n],使T[i]存放结点i
admin
2019-08-01
83
问题
假定用两个一维数组L[N]和R[N]作为有N个结点1,2,…,N的二叉树的存储结构。L
和R
分别指示结点i的左儿子和右儿子;L
=0(R
=0)表示i的左(右)儿子为空。试写一个算法,由L和R建立一个一维数组T[n],使T
存放结点i的父亲;然后再写一个判别结点U是否为结点V的后代的算法。
选项
答案
由指示结点i左儿子和右儿子的两个一维数组L[i]和R[i],很容易建立指示结点i的双亲的一维数组r[i],根据T数组,判断结点U是否是结点V后代的算法转为判断结点V是否是结点U的祖先的问题。 int Generation(int U,V,N,L[],R[],T[]){ //L[]和R[]是含有N个元素且指示二叉树结点i左儿子和右儿子的一维数组 //本算法据此建立结点i的双亲数组T,并判断结点U是否是结点V的后代 int i: for(i=1;i<=N;i++)T[i]=0;//T数组初始化 for(i=l;i<=N;i++) //根据L和R填写T if(L[i]f=0)T[L[i]]:i; //若结点i的左子女是L,则结点L的双亲是结点i for(i=1;i<=N;i++) if(R[i]!=0)T[R[i]]=i; //i的右子女是R,则R的双亲是i int parent=U: //判断U是否是V的后代 while(parent!=V&&parent!=0)parent=T[parent]; if(parent==V){printf(”结点U是结点V的后代”);retum(1);} else{printf(”结点u不是结点V的后代”);return(0);} }//结束Generation
解析
转载请注明原文地址:https://kaotiyun.com/show/kNCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述欧洲一体化的进程及影响。
明朝初加强专制统治的措施中,与后来宦官专权有直接关系的是()。
关于垄断组织的积极作用,不正确的说法是()。
下列不属于苏联高度集中的经济政治体制产生的条件的是()。
下列各组条约的时间排列顺序正确的是()。①《布列斯特条约》②《色佛尔条约》③《九国公约》④《洛桑条约》
提出电磁感应定律的是物理学家()。
书院制度,始于唐而盛于宋,根据所学知识。回答问题:南宋书院的复起,是由朱熹开始的。他重建白鹿洞书院,亲自到书院讲学,还亲手制定()
隋唐五代时期是中国古代商品经济发展史上的一个重要阶段,种类多,交换规模大,交换方式多。试回答问题:我国银行最早的雏形是唐朝时期出现的()
IP数据报的报文格式如下图所示。在没有选项和填充的情况下,报头长度域的值为()。
下图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控
随机试题
关于精原细胞,下述哪项错误()
喷枪的搭接应在()左右。
Idon’tlike______youspeaktoher.
女性,45岁,诊断为原发性甲亢,曾用抗甲状腺药物治疗后复发,现拟行甲状腺次全切除术。若用丙基硫氧嘧啶+碘剂作术前准备,未达手术要求的表现是
调节眼压的最主要因素是
王某,70岁,就诊时被诊断为前列腺增生,准备接受手术治疗。王某可能出现的症状有
聊城光岳楼的初建出于观光游览目的。()
ROM中的信息是
Thespeechismainlyabouttheorganizationofthecompany.
最小变动价位的设置是为了保证市场的盈利性。()
最新回复
(
0
)