首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
假定用两个一维数组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
2016-03-29
32
问题
假定用两个一维数组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的双亲的一维数组T[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=1;i<=N;i++)//根据L和R填写T if(L[i]!=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){pfintf(”结点u是结点V的后代”);return(1);} else{pfintf(”结点U不是结点V的后代”);return(0);} }//结束Generation
解析
转载请注明原文地址:https://kaotiyun.com/show/bnRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
近现代以来,国际关系中先后出现了维也纳体系、凡尔赛一华盛顿体系和雅尔塔体系。关于这三个体系共同点的表述不正确的是()。
试结合新民主主义革命不同历史时期的历史实际,阐述中国共产党在处理同资产阶级复杂关系问题上的做法、结果及其历史经验。
鸦片战争后中国社会思想领域发上了哪些重要变化。
东汉末年,朝鲜半岛北部先后兴起()、百济、新罗三个国家。
前期的新文化运动不能给灾难深重的中国指明真正的出路,主要是由于()。
全国高校院系调整的具体时间是()。
在下列哪个条约中,最先出现了片面最惠国待遇?()
论述欧洲一体化进程及其影响。
阅读史料,回答以下问题:重庆中央党部,暨中央执监委员诸同志均鉴:今年4月,临时全国代表大会宣言,说明此次抗战之原因,曰:“自塘沽协定以来,吾人所以忍辱负重与倭国周旋,无非欲停止军事行动,采用和平方法,先谋北方各省之保全,再进而谋东北四省问题之合
解放军渡江战役中横渡长江的东西两个攻击点是()。
随机试题
Marysaidshe(heard)someoneintheclassroom,(but)whenwelookedwe(didn’tfind)(someone).
多器官功能障碍时胃肠功能代谢改变中下列哪一项不存在
社区护士怀疑患者有自杀念头时,下列护理措施错误的是
判断前列腺增生严重程度的方法是
A、重症肌无力B、青光眼C、有机磷中毒D、去极化肌松药过量中毒E、房室传导阻滞碘解磷定用于()
以下关于可转换债券的说法中,错误的是()。
操作系统主要是对计算机系统中的全部软硬件资源进行管理,以方便用户提高计算机使用效率的一种系统软件。它的主要功能有:(66)、存储管理、文件管理、(67)设备管理。Winndows是一个具有图形界面的(68)系统软件。UNIX操作系统基本上是采用(69)语言
目前有许多不同的音频文件格式,下列哪一种不是数字音频的文件格式()。
A、 B、 C、 B
WhichofthefollowingisNOTamongthecriteriaofthe100mostpowerfulwomenintheworld?
最新回复
(
0
)