1、题目描述

2、算法分析

既然是找中序遍历的某一个结点的下一个结点,其实思路已经很明确了。
    1、将二叉树中序遍历,存储到集合中。前提,首先找到根节点。根节点可以根据指向父节点的next指针找到。
    2、找到根节点后,遍历集合,找到pNode == list.get(i),的那个元素。
 注意:

如果pNode是最后一个元素的话,下一个元素肯定为null;
  如果pNode不是最后一个元素,返回list,get(i+1)

3、代码实现

/*
public class TreeLinkNode {int val;TreeLinkNode left = null;TreeLinkNode right = null;TreeLinkNode next = null;TreeLinkNode(int val) {this.val = val;}
}
*/
/*既然是找中序遍历的某一个结点的下一个结点,其实思路已经很明确了。1、将二叉树中序遍历,存储到集合中。前提,首先找到根节点。根节点可以根据指向父节点的next指针找到。2、找到根节点后,遍历集合,找到pNode == list.get(i),的那个元素。注意:如果pNode是最后一个元素的话,下一个元素肯定为null;如果pNode不是最后一个元素,返回list,get(i+1)
*/
import java.util.ArrayList;
public class Solution {ArrayList<TreeLinkNode> list = new ArrayList<>();public TreeLinkNode GetNext(TreeLinkNode pNode) {TreeLinkNode par = pNode;while(par.next != null){par = par.next;}inOrder(par);for(int i = 0;i < list.size();i++){if(pNode == list.get(i)){if(i == list.size() - 1){return null;}else{return list.get(i + 1);}}}return null;}// 中序遍历public void inOrder(TreeLinkNode pNode){if(pNode != null){inOrder(pNode.left);list.add(pNode);inOrder(pNode.right);}}
}

【打卡第243道】【二叉树】【剑指Offer】:JZ8 二叉树的下一个结点相关推荐

  1. 《LeetCode力扣练习》剑指 Offer 27. 二叉树的镜像 Java

    <LeetCode力扣练习>剑指 Offer 27. 二叉树的镜像 Java 一.资源 题目: 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 例如输入: 4 / 2 7 / \ / ...

  2. 【LeetCode】剑指 Offer 34. 二叉树中和为某一值的路径

    [LeetCode]剑指 Offer 34. 二叉树中和为某一值的路径 文章目录 [LeetCode]剑指 Offer 34. 二叉树中和为某一值的路径 package offer;import ja ...

  3. 【LeetCode】剑指 Offer 27. 二叉树的镜像

    [LeetCode]剑指 Offer 27. 二叉树的镜像 文章目录 [LeetCode]剑指 Offer 27. 二叉树的镜像 一.递归法 二.辅助栈(或队列) 一.递归法 根据二叉树镜像的定义,考 ...

  4. 算法leetcode|剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树(rust很强)

    文章目录 剑指 Offer 27. 二叉树的镜像|226. 翻转二叉树: 样例 1: 限制: 分析 题解 rust go c++ java python 原题传送门:https://leetcode. ...

  5. JZ27 [剑指 Offer 27] 二叉树的镜像

    二叉树的镜像 Category Difficulty Likes Dislikes lcof Easy (79.61%) 311 - 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 例如输入: ...

  6. C#刷剑指Offer | 从上到下打印二叉树

    [C#刷题]| 作者 / Edison Zhou 这是EdisonTalk的第288篇原创内容 我们来用之前学到的数据结构知识来刷<剑指Offer>的一些核心题目(精选了其中30+道题目) ...

  7. 《剑指offer》二叉树镜像

    剑指offer简单题,但是能一下写对也需要小心考虑细节. 题目描述 操作给定的二叉树,将其变换为源二叉树的镜像. 输入描述: 二叉树的镜像定义:源二叉树 8 / 6 10 /   / 5 7 9 11 ...

  8. 【Java】 剑指offer(27) 二叉树的镜像

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 思路 画图可 ...

  9. 剑指offer 27. 二叉树的镜像

    声明:本系列博客是对何海涛<剑指offer>的关键点总结. 1.树的镜像 定义:树的根结点相同,但是左右两个子节点交换了位置 2.解题思路 1)前序遍历树的每一个结点: 2)如果遍历到的节 ...

  10. 剑指offer:二叉树的下一个节点

    题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. /* struct TreeLinkNode {int ...

最新文章

  1. qt qtreewidget 设置 值_QTreeWidget
  2. ubuntu18.04(python3.6)安装pip3报错:ImportError: cannot import name 'sysconfig'
  3. [svc]ext4文件删除访问原理
  4. python 导包语法 import package as name 和 from package import name 的区别
  5. [云炬创业基础笔记]第七张创业团队测试9
  6. CodeForces - 520C DNA Alignment(思维)
  7. 单片机检测220V交流电通断电路
  8. linux-ubuntu下调出中文输入法
  9. 3.live555源码分析----延时队列
  10. Java中List转换为数组,数组转List
  11. 计算机算法常用英语,计算机术语 算法相关术语
  12. linux看视频播放器官方下载,SMPlayer - Linux 电影播放器
  13. 一文理解 Windows 身份验证原理
  14. 基于Android studio+SSH的单词记忆(背单词)APP设计
  15. 自定义Behavior
  16. 数据挖掘算法和实践(四):支持向量机(iris鸢尾花数据集)
  17. 张五常经济学三大公理
  18. 小米盒子,一个说皇帝没穿衣服的小孩
  19. 磷酸铁锂离子蓄电池的特点
  20. 饥荒专属服务器证书过期,饥荒TGP版存档丢失及证书不存在解决方法介绍

热门文章

  1. 不能安装该软件,因为当前无法从软件更新服务器获得。
  2. Win10下更改Android AVD 模拟器的存放位置的方法
  3. 第1天 | 28天学会PyQt5,开发四部曲
  4. 服务器安装系统鼠标键盘不能用,在Dell计算机上安装Win7系统后,将无法使用USB鼠标和键盘. 完整的解决方案...
  5. 网站需要高防服务器吗,什么类型的行业需要高防服务器?
  6. 添加java文件,添加 java 文件
  7. wslregisterdistribution failed with error: 0x80070005
  8. [乡土民间故事_徐苟三传奇]第一回_紫禁城派兵破龙胎
  9. 2018年BAT,京东,美团,滴滴等公司面试经验总结
  10. 哈工大计算机学院刘明,哈工大机电工程学院机械工程专业导师介绍:刘明