【编程题】二叉树的下一个节点(java实现)
2019-08-06 16:43
218 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40432108/article/details/98631343
【编程题】二叉树的下一个节点(java实现)
题目来源
题目描述
给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
题目解答
/* public class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; TreeLinkNode next = null; TreeLinkNode(int val) { this.val = val; } } */ public class Solution { public TreeLinkNode GetNext(TreeLinkNode pNode) { if(pNode==null) return null; if(pNode.right!=null){ TreeLinkNode right=pNode.right; while(right.left!=null){ right=right.left; } if(right!=null) return right; } if(pNode.next!=null){ TreeLinkNode father=pNode.next; if(father.left==pNode) return father; while(father.next!=null){ if(father.next.left==father) return father.next; father=father.next; } } return null; } }
相关文章推荐
- 《剑指offer》编程题java实现(二十八):二叉树的下一个节点
- 剑指offer面试题58 二叉树的下一个节点(Java实现)
- 二叉树的下一个节点(Java实现)
- 剑指offer编程题Java实现——面试题13在O(1)时间内删除链表节点
- java实现从上往下打印出二叉树的每个节点,同层节点从左至右打印。
- 二叉树排序及二叉树节点的增删改查(java实现)
- 【编程题】重建二叉树(Java实现)
- 二叉树的下一个结点java实现
- 求二叉树根节点到子节点和为某一值的所有路径(Java实现)
- java实现堆排序(放入数组的索引对应二叉树节点位置)、归并排序
- java实现二叉树及(层序,先序,中序,后序,节点查找)
- 剑指offer编程题Java实现——面试题6重建二叉树
- (php实现剑指offer)二叉树的下一个节点
- 剑指Offer实现面试题8-二叉树的下一个节点
- <剑指offer 面试题8>二叉树的下一个节点(Java)
- 数据结构与算法分析笔记与总结(java实现)--二叉树18:二叉树的下一个结点
- Java实现:在二叉树中,求距离最远的两个节点的距离
- java实现二叉树的建立,前中后序遍历,层次遍历,深度,节点个数等
- 二叉树的下一个节点(java版)
- 二叉树两个节点求最近的公共祖先节点java代码实现