首页 > 编程知识 正文

二叉树最大深度算法,求二叉树的深度代码

时间:2023-05-04 16:08:29 阅读:166777 作者:925

你知道java求二叉树深度的递归算法是什么样的吗? 具体怎么实现呢? 接下来给你看的实例是有关这方面的内容,一起看吧。

要求出树的深度,可以先求出左边子树的深度和右边子树的深度。

用递归算法实现后,递归的出口节点为空,返回值为0。

代码实现: importjava.util.LinkedList;

公共类深度

{

//递归实现1

公共树根(publicintfinddeep ) )。

{

intdeep=0;

if (根!=null )

{

intlchilddeep=find deep (root.left;

intrchilddeep=find deep (root.right;

deep=lchilddeeprchilddeep? lchilddeep 1:rchilddeep 1;

}

返回深度;

}

//递归实现2

公共树根(publicintfinddeep1) )。

{

if (root==空) )。

{

返回0;

}

else

{

intlchilddeep=find deep1(root.left; //求出左子树的深度

intrchilddeep=find deep1(root.left; //求出右边子树的深度

returnlchilddeeprchilddeep? lchilddeep 1:rchilddeep 1; //左边子树和右边子树的深度大的一方加1,就是整棵树的深度

}

}

这还是非常简单的,以前也介绍过java二叉树的深度不使用递归,而是非递归实现,感兴趣的朋友要知道。

请继续关注奇q工具网吧。 更多的java程序代码示例可以共享。

请阅读:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。