数据l构W六章算法设计题[10]_跨考网
1Q已知一二叉树(wi)按顺序方式存储在数组A[1..n]中。设计算法,求出下标分别?/span>i?/span>j的两个结点的最q的公共先l点的倹{?a target="_blank">武汉大学 2000 ?/span> 1?/span>
【参考答案?/span>
[题目分析]二叉?wi)顺序存储,是按完全二叉树(wi)的格式存储Q利用完全二叉树(wi)双亲l点与子女结点编号间的关p,求下标ؓ(f)i?/span>j的两l点的双Ԍ双亲的双Ԍ{等Q直x到最q的公共先?/span>
void Ancestor(ElemType A[],int n,i,j)
//二叉?wi)顺序存储在数?/span>A[1..n]中,本算法求下标分别?/span>i?/span>j的结点的最q公q先结点的倹{?/span>
{while(i!=j)
if(i>j) i=i/2; //下标?/span>i的结点的双亲l点的下?/span>
else j=j/2; //下标?/span>j的结点的双亲l点的下?/span>
printf(“所查结点的最q公q先的下标?/span>%dQ值是%d?/span>,i,A[i]);//讑օ素类型整型?/span>
}// Ancestor
2Q设计这L(fng)二叉?wi),用它可以表示父子、夫d兄弟三种关系Qƈ~写一个查找Q意父亲结点的所有儿子的q程。?a target="_blank">燕山大学 2001 四?/span>5 Q?/span>8分)?/span>
【参考答案?/span>
[题目分析]用二叉树(wi)表示出父子,夫妻和兄弟三U关p,可以用根l点表示Ӟ先Q,根结点的左子奌C妻Q妻的右子女表示子。这U二叉树(wi)可以看成cM?wi)的孩子兄弟链表表示法;根结?gu)ӞҎ(gu)叛_奻I左子奌C妻Q妻的右子女Q右子女的右子女{)均可看成兄弟Q即父的所有儿子)Q兄弟结点又成ؓ(f)新的Ӟ其左子女是兄弟(父的儿子Q妻Q妻的右子女Q右子女的右子女{)又ؓ(f)儿子的儿子等{。首先递归查找某父亲结点,若查找成功,则其左子x妻,ȝ叛_奛_叛_女的叛_女等均ؓ(f)父亲的儿子?/span>
BiTree Search(BiTree t,ElemType father)//在二叉树(wi)上查扑րgؓ(f)father的结?/span>
{if(t==null) return (null); //二叉?wi)上?/span>fatherl点
else if(t->data==father) return(t); //查找成功
p=Search(t->lchild,father); p=Search(t->rchild,father); }
}//l束Search
void PrintSons(BiTree t,ElemType p) //在二叉树(wi)上查扄点gؓ(f)p的所有的儿子
{p=Serach(t,p); //在二叉树(wi)t上查扄l点p
if(p!=null) //存在父结?/span>
{q=p->lchild; q=q->rchild; //先指向其ȝ点,再找到第一个儿?/span>
while(q!=null) {printf(q->data); q=q->rchild;} //输出父的所有儿?/span>
}
}//l束PrintSons
2022考研初复试已l接q尾壎ͼ考研学子全面q入2023届备?/b>Q跨考ؓ(f)23考研的考生准备?0大课包全E准备、全q复?fn)备考计划、目标院校专业辅对{全真复试模拟练?fn)和全程针对性指|2023考研的小伙伴针也已经开始择校和复习(fn)了,跨考考研畅学5.0版本全新升Q无Z在校在家都可以更自如的完成你的考研复习(fn)Q?/a>暑假集训?/span>带来了院校专业初步选择Q明方向;考研备考全q规划,核心知识点入门;个性化制定备考方案,助你赢在赯U,早出发一点离成功更q一点!
考研院校专业选择和考研复习(fn)计划 | |||
2023备考学?/td> | 2023U上U下随时学习(fn) | 34所自划UK校考研复试分数U汇?/td> | |
2022考研复试最全信息整?/a> | 全国各招生院校考研复试分数U汇?/a> | ||
2023全日制封闭训l?/span> | 全国各招生院校考研调剂信息汇?/a> | ||
2023考研先知 | 考研考试U目有哪些? | 如何正确看待考研分数U? | |
不同院校相同专业如何选择更适合自己?/a> | 从就业说考研如何择专业? | ||
手把手教你如何选专业? | 高校研究生教育各学科门类排行?/a> |
相关推荐
跨考考研评
班型 | 定向班型 | 开班时?/td> | 高定?/td> | 标准?/td> | 评介绍 | 咨询 |
U季集训 | 冲刺?/td> | 9.10-12.20 | 168000 | 24800?/td> | 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定? | |
2023集训畅学 | 非定向(政英?数政qQ?/td> | 每月20?/td> | 22800?协议? | 13800?/td> | 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td> |