判断一棵二叉树是否是完全二叉树的递归、非递归算法,急需!(100分)

  • 主题发起人 主题发起人 juli
  • 开始时间 开始时间
J

juli

Unregistered / Unconfirmed
GUEST, unregistred user!
大虾帮个忙。
 
function Full(ATree: TTree): Boolean;
begin
if ATree=nil then
begin
Result:=False;
Exit
end;
if (ATree.Left=nil) and (ATree.Right=nil) then
Result:=True
else
Result:=Full(ATree.Left) and Full(ATree.Right)
end
 
是完全二叉树!不是满二叉树。
 
可用广度优先遍历并编号,同时判断自己的编号是不是父节点编号的2倍或2倍加1,不是则非完全二叉树。
 
你可以去看清华大学出的《数据结构》和习题集。里面有具体的答案[:)]
 
多人接受答案了。
 
后退
顶部