首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知在二叉树中,T为根结点,*p和*q为二叉树中两个结点,试编写求距离它们最近的共同祖先的算法。
已知在二叉树中,T为根结点,*p和*q为二叉树中两个结点,试编写求距离它们最近的共同祖先的算法。
admin
2012-06-26
48
问题
已知在二叉树中,T为根结点,*p和*q为二叉树中两个结点,试编写求距离它们最近的共同祖先的算法。
选项
答案
int.found=FALSE; Bitree*Find_Near_Ancient(Bitree T,Bitree p,Bitree q){ //求二叉树T中结点P和q的最近共同祖先 Bitree pathp[100],pathq[100]; //设立两个辅助数组暂存从根到p,q的路径 Findpath(T,p,pathp,0); found=FALSE; Findpath(T,q,pathq,0); //求从根到p,q的路径放在pathp和pathq中 for(i=0;pathp[i]==pathq[i]&&pathp[i];i++) ;//查找两条路径上最后一个相同结点 return pathp[--i]; } void Findpath(Bitree T,Bitree p,Bitree path[],int i){ //求从T到p路径的递归算法 if(T==p) { found=TRUE; //找到 return; } path[i]=T; //当前结点存入路径 if(T->lchild) Findpath(T->lchild,p,path,i+1); //在左子树中继续寻找 if(T->rchild&&!found) Findpath(T->rchild,p,path,i+1); //在右子树中继续寻找 if(!found) path[i]=NULL; //回溯 }
解析
本题也可叙述为求,*p和*q两个结点的最小子树。
遍历访问到*p时,将*p结点的祖先保存到数组pathp中,再遍历访问到*q时,将*q结点的祖先保存到数组pathq中,将数组pathp与数组pathq的结点依次(从0开始)比较,找到最近的共同祖先。
转载请注明原文地址:https://kaotiyun.com/show/8yxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
康熙五十九年(1720)指定()组织“公行”(“十三行”)专营对外贸易。凡外商税项的征收、货物的交易,以及外商生活的管理等,均归“行商”负责。
在半殖民地半封建社会条件下,由于经济地位决定了在政治上带有两重性的阶级是()。
1949年6月,毛泽东发表了系统阐明中国共产党关于建立新中国主张的()。
以德国宗教改革为例分析宗教改革产生的原因和作用。
下列不属于苏联高度集中的经济政治体制产生的条件的是()。
中国古代的移民主要有两个大的流向:或者由北方草原内迁人中原,或者由中原迁入江南,这两大迁移最主要的影响是()。
北宋时期,对市场商品价格管理主要采取()。
材料一从波罗的海斯德丁(什切青)到亚得里亚海边的里亚斯特,一幅横贯欧洲大陆的铁幕已经降落下来……无一不处在苏联的势力范围之内。
古埃及第24朝法老波克利斯进行改革,宣布废除奴隶制,债权人只能索取债务人的财产作抵偿,而不能占有债务人的人身,因为财产属于个人,而公民人身属于国家,国家需要他们服役。该改革旨在
下图所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控
随机试题
简述现代教育的特征。
下列关于硝苯地平的说法不正确的是
朱丹溪提出安胎之妙药是
A.硫柳汞B.氯化钠C.羧甲基纤维素钠D.聚山梨酯80E.注射用水在醋酸可的松注射液中作为抑菌剂的是
Gentamycin是Tobramycin是
安全生产管理制度的核心是()。
施工过程中遇到的合同变更,()必须掌握变更情况,遵照有关规定及时办理变更手续。
对经济产生不良影响较大的财政赤字弥补方式是()。
窗体上有一个名称为Command1的命令按钮,单击该按钮时所实现的功能是产生10个随机整数,然后从键盘输入一个整数,查找该数在数组中的位置。若找到,输出该数的位置;若没有找到,给出相应的提示。该命令按钮的单击事件过程如下:PrivateSubComm
IstheInternetMakingUsForgetful?A)AtouristtakesapictureoftheEmpireStateBuildingonhisiPhone,deletesit,thenta
最新回复
(
0
)