以下算法是以二叉链表为存储结构,求二叉树中结点x在树中层数的算法。请填写以下空白处语句。
intLevel(BinTreebt,BinTNode*P,intlh)
{
staticinth=0;
if(____)h=O;//判断树是否为空
elseif(bt==P)
h=lh;
else{
Level(bt一>lchild,p,______);
if(_____)//左子树已经查完
Level(bt一>rchild,P,lh+1);
}
returnh;
}
【正确答案】:bt==NULL 1h+1 h==0 解析:采用递归算法。p为指向待查找的结点,h为返回P所指结点的所在层数,初值为0;树空时返回0。1h指示二叉树bt的层数,调用时置初值为1。
以下算法是以二叉链表为存储结构,求二叉树中结点x在树中层数的算法。请填写以下空白处语句。intLevel(BinTreebt,B
- 2024-08-04 00:38:24
- 数据结构(02331)
- 1