首页 > 其他 > 详细

二叉树——主辅函数——跨层匹配:Leetcode116. 填充每个节点的下一个右侧节点指针

时间:2021-03-14 10:23:47      阅读:21      评论:0      收藏:0      [点我收藏+]
 1 // 主函数
 2 Node connect(Node root) {
 3     //--主函数可以解决:
 4     //--用递归函数遍历左右节点时,
 5     //--root节点必定是完全没有兄弟节点的特殊情况,
 6     //--将root节点独立处理
 7     if (root == null) return null;
 8     connectTwoNode(root.left, root.right);
 9     return root;
10 }
11 
12 // 辅助函数
13 //--辅助函数即递归函数的主体
14 void connectTwoNode(Node node1, Node node2) {
15     //--二叉树的NULL节点直接用return结束,即忽略NULL节点的处理
16     if (node1 == null || node2 == null) {
17         return;
18     }
19 
20     /**** 前序遍历位置 ****/
21     // 连接传入的两个节点
22     node1.next = node2;
23 
24     // 连接相同父节点的两个子节点
25     connectTwoNode(node1.left, node1.right);
26     connectTwoNode(node2.left, node2.right);
27     
28     // *********************连接跨越父节点的两个子节点
29     connectTwoNode(node1.right, node2.left);
30 }
31 //--使用递归处理分层的树的时候,可以通过:指明递归函数中的跨层操作的对象,再使用递归函数处理该对象,即可遍历该跨层对象,例:29行中的两个参数

 

二叉树——主辅函数——跨层匹配:Leetcode116. 填充每个节点的下一个右侧节点指针

原文:https://www.cnblogs.com/Ping697/p/14531557.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!