正在加载图片...
else if(T]==NULI T2==NULL)return 0; /12分 /若根结点值相等并且左、右子树对应相等则两棵树相等 else if(T1->data==T2->>data &.&BTreeEqual(T1->left,T2->left)8.&. BTreeEqual(TI->>right,T2->>right))return 1; /15分 /若根结点值不等或左、右子树对应不等则两棵树不等 else return 0; /6分 另一个参考答案: int BTreeEqual(BinTreeNode Tl,BinTreeNode T2) //若两棵树均为空或实际上是问一棵树时返回1表示相等 if(T]==T2)return 1; //1分 /若一棵为空一棵不为空则返回0表示不等 if(T1==NULL T2==NULL)return 0; 112分 //若根结点值不等返回0表示不等 if(Tl->data!=T2->data)return 0; /3分 //若根结点值相等则两棵树是否相等取决于它们的左、右子树是否对应相等 return BTreeEgual(Tl->left,T2->left)&&.BTreeEqual(T1->right,T2- >right); /6分 78elseif(’1’1今=NIJI,1,}!‘1’2二=NUI矛1洲)relurno 刀2分 //若根结点值相等并 比左 、右子树对应相等则两棵树相等 。15、、if(‘1’1一》〔1:,1、,==’1’2一》〔1:,t:,吕.吕B‘1、reel二q。:,1(’1’1一>1。fl,‘1’2一>Ieft)尽.尽 B’1、r、、el二qual(1、1一二>rlg正It,’1、2一)right))retllrrll 刀5分 /若根结点值不等或左、右子树对应不等则两棵树不等 elsereturno 刀6分 另一个参考答案: in之B飞、rceE(子ual(Bin‘1’reeNode、 丁’1,Bin,l’reeNode* 了’2) //若两棵树均为空或实际上是同一棵树时返回1表示相等 if(TI= = 1’2)ret:lrtl 刀1分 //若一棵为空一棵不为空则返 回 。表示不等 if(,J、1==NUIJIJ{}1’2==NUI沙IJ)returno //2分 //若根结点值不等返回 。表示不等 if(‘1’1一>dala!=’1’2一)(lata)returno 刀 3分 //若根结点值相等则两棵树是否相等取决于它们的左 、右子树是否对应相等 re,urnBI’reeEqual(‘1’1一>left,’rZ一>left)乙aBTreeEqual(TI一>:ight,1’2一 >rigl飞t); 刀 6分 78
<<向上翻页
©2008-现在 cucdc.com 高等教育资讯网 版权所有