![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
二叉树
一只有追求的单身狗
卷卷更健康
展开
-
二叉树-删除节点
删除的思路判断当前节点的子节点是否需要删除,而不是去判断当前节点是否需要删除如果当前节点的左子节点不为空,并且左子节点就是要删除的节点,就将this.left=null,并且返回,结束递归如果当前节点的右子节点不为空,并且右子节点就是要删除的节点,就将this.right=null,并且返回,结束递归如果2,3没有完成删除节点,则需要向左子树进行递归删除如果4没有完成删除节点,则需要向右子树进行递归删除如果树是空树,树只有一个root节点,则等价将二叉树置空package com.hanl原创 2022-05-08 20:41:01 · 624 阅读 · 0 评论 -
二叉树-查找指定节点
使用前,中,后序的方式来查询指定节点元素前序查找思路先判断当前节点的no是否等于查找节点的no,如果相等,则返回当前节点如果不相等,则判断当前节点的左子节点是否为空,如果不为空则递归查找如果左递归前序查找,找到了节点,则返回,否则继续判断当前节点的右子节点是否为空,如果不为空,则继续向右递归查找中序查找思路判断当前节点的左子节点是否为空,如果不为空,则向左递归中序查找如果找到,则返回,如果找不到,就和当前节点比较,如果等于当前节点则返回,否则继续进行右递归中序查找如果当前节点的右子节点原创 2022-05-08 19:48:20 · 1729 阅读 · 0 评论 -
二叉树遍历应用实例(前序,中序,后序)
思路:前序遍历先输出当前节点(初始的时候是root节点)如果左子节点不为空,则递归继续前序遍历如果右子节点不为空,则递归继续前序遍历中序遍历如果当前节点的左子节点不为空,则递归中序遍历输出当前节点如果当前节点的右子节点不为空,则递归中序遍历后序遍历如果当前节点的左子节点不为空,则递归后序遍历如果当前节点的右子节点不为空,则递归后序遍历输出当前节点代码实现package com.hanlin.tree;public class BinaryTree..原创 2022-05-08 19:44:58 · 550 阅读 · 0 评论