代码部分
package tree;
/**
* @author kegekeqi
* @version 1.0
* @date 2021-12-12 10:45
*/
public class TreeLinkNode {
int val;
TreeLinkNode left = null;
TreeLinkNode right = null;
TreeLinkNode next = null;
TreeLinkNode(int val) {
this.val = val;
}
@Override
public String toString() {
return "TreeLinkNode{" +
"val=" + val +
", left=" + left +
", right=" + right +
", next=" + next +
'}';
}
}
package tree;
/**
-
@author kegekeqi
-
@version 1.0
-
@date 2021-12-12 10:45 / public class Solution { /*
- 二叉树下一个节点 */ public TreeLinkNode GetNext(TreeLinkNode pNode) { if (pNode == null) { return null; } if (pNode.right == null) { for (; pNode.next != null && pNode.next.right == pNode; pNode = pNode.next) { //null }; return pNode.next; } for (pNode = pNode.right; pNode.left != null; pNode = pNode.left) { //null }; return pNode; }
public static void main(String[] args) { TreeLinkNode pNode = new TreeLinkNode(1); Solution solution = new Solution(); TreeLinkNode treeLinkNode = solution.GetNext(pNode); System.out.println(treeLinkNode); }
}
> 本文使用 [文章同步助手](https://juejin.cn/post/6940875049587097631) 同步