java 二叉树(六)查找二叉树一个节点的双亲节点
来源:互联网 发布:数控铣床编程小酒杯 编辑:程序博客网 时间:2024/04/29 11:07
原理:递归查找,使用查找节点的函数找到在树中的值,然后当当前节点的左孩子的指向或右孩子的指向为查找到的节点时,返回当前节点即可
比如: node.getLeftChild()==findNode()
那么其findNode()的父节点即为:node.
public Node parent(Object obj){Node temp=parent(root, obj);return temp;}public Node parent(Node node, Object findnode){if(node==null){return null;}if((node.getLeftChild()!=null&&node.getLeftChild().data.value==findnode.value)||(node.getRightChild()!=null&&node.getRightChild().data.value==findnode.value)){//如果找到返回双亲节点//这里需要判断node的左或右孩子是否为空的条件,否则一旦node的左孩子或右孩子为空(即:找不到)会报空指针的错误return node;}//在左子树中查找 , 如果左子树中没有去右子树中查找Node N;if((N=parent(node.getLeftChild(),findnode))!=null){return N;}else{return parent(node.getRightChild(),findnode);}}
0 0
- java 二叉树(六)查找二叉树一个节点的双亲节点
- 根据扩展二叉树前序序列生成二叉树,输入某个节点的值,查找其双亲节点的值(二叉链表)
- 查找二叉树节点
- 如何找到二叉树两个节点的最近公共双亲?
- java 二叉树(五)查找二叉树中的节点
- java 二叉树遍历+查找祖先节点
- 数据结构--二叉树--双亲、孩子和兄弟节点的查询(顺序结构)
- 数据结构--二叉树--双亲、孩子和兄弟节点的查询(链式结构--队列)
- 查找二叉树删除节点的操作
- 二叉查找树中节点的删除。
- 二叉树公共祖先节点的查找
- 删除二叉查找树的节点-LintCode
- 检测二叉查找树节点的情况
- 删除二叉查找树的节点
- 删除二叉查找树的节点
- 删除二叉查找树的节点
- 二叉查找树中节点的删除
- LintCode:删除二叉查找树的节点
- ogg同构安装
- 扑克游戏
- android学习—— context 和 getApplicationContext()
- oracle分区拆分
- App在iOS9上不能分享至微信,提示微信没有安装
- java 二叉树(六)查找二叉树一个节点的双亲节点
- 无废话WCF入门教程二[WCF应用的通信过程]
- 统计学习方法——CART, Bagging, Random Forest, Boosting
- matplotlib中文显示问题
- iOS常见枚举类型
- JavaScript学习笔记--03
- [高斯消元 线性基 二进制拆分] BZOJ 2844 albus就是要第一个出场
- 数学规律题,数论知识:hdu1792
- iOS开发工具----Cocoapods的安装与使用