Populating Next Right Pointers in Each Node
来源:互联网 发布:淘宝在线客服 编辑:程序博客网 时间:2024/06/05 11:00
Given a binary tree
struct TreeLinkNode {
TreeLinkNode *left;
TreeLinkNode *right;
TreeLinkNode *next;
}
Populate each next pointer to point to its next right node. If there is no next right node, the next pointer should be set toNULL.
Initially, all next pointers are set to NULL.
Note:
- You may only use constant extra space.
- You may assume that it is a perfect binary tree (ie, all leaves are at the same level, and every parent has two children).
For example,
Given the following perfect binary tree,
1
/ \
2 3
/ \ / \
4 5 6 7
After calling your function, the tree should look like:
1 -> NULL
/ \
2 -> 3 -> NULL
/ \ / \
4->5->6->7 -> NULL
Have you been asked this question in an interview?
/** * Definition for binary tree with next pointer. * public class TreeLinkNode { * int val; * TreeLinkNode left, right, next; * TreeLinkNode(int x) { val = x; } * } */public class Solution { public void connect(TreeLinkNode root) { if (root == null) { return; } setNext(root.right, root); setNext(root.left, root); return; } private void setNext(TreeLinkNode cur, TreeLinkNode parent) { if (cur == null) { return ; } if (parent.left == cur) { cur.next = parent.right; } else { if (parent.next != null) { cur.next = parent.next.left; } } setNext(cur.right, cur); setNext(cur.left, cur); return; }}
0 0
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- Populating Next Right Pointers in Each Node
- 一个下载工具
- 电信增值彩信平台模块清单(100万级)
- Python3 - 时间处理与定时任务
- 杭电题目分类
- PL/SQL Developer 配置使用与Oracle数据库导入Excel表格
- Populating Next Right Pointers in Each Node
- hdu 4911 Inversion(归并排序求逆序对数)2014多校训练第5场
- 周赛 POJ 2250 Compromise
- 理解Java多态
- hdu 1236 排名,大神教过写出来的,SORT
- ASP.NET Web API Selfhost宿主环境中管道、路由
- BZOJ 1483: [HNOI2009]梦幻布丁
- 小明A+B(2096)
- cdll和windll的区别