[leetcode] Populating Next Right Pointers in Each Node
来源:互联网 发布:白鹤翔java架构师视频 编辑:程序博客网 时间:2024/05/02 01:09
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 to NULL
.
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
思路: 对于处理不同layer的BT问题,我常用的方法就是current数组和next数组来分别储存不同layer的node, 因而这个题就非常容易解决
# Definition for a binary tree node# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = None# self.next = Noneclass Solution: # @param root, a tree node # @return nothing def connect(self, root): if root == None: return root.next = None current = [root] while len(current) != 0: next = [] for node in current: if node.left != None: next.append(node.left) if node.right != None: next.append(node.right) for i in range(0, len(next)): if i == len(next) -1: next[i].next = None else: next[i].next = next[i+1] current = next
0 0
- 【LeetCode】Populating Next Right Pointers in Each Node Populating Next Right Pointers in Each Node II
- leetcode Populating Next Right Pointers in Each Node &&Populating Next Right Pointers in Each Node||
- LeetCode Populating Next Right Pointers in Each Node & Populating Next Right Pointers in Each Node I
- 【Leetcode】Populating Next Right Pointers in Each Node in JAVA
- LeetCode Populating Next Right Pointers in Each Node
- LeetCode Populating Next Right Pointers in Each Node II
- [Leetcode] Populating Next Right Pointers in Each Node
- LeetCode: Populating Next Right Pointers in Each Node
- [Leetcode] Populating Next Right Pointers in Each Node II
- [LeetCode] Populating Next Right Pointers in Each Node
- [LeetCode] Populating Next Right Pointers in Each Node II
- 【leetcode】 Populating Next Right Pointers in Each Node
- leetcode 78: Populating Next Right Pointers in Each Node
- leetcode 79: Populating Next Right Pointers in Each Node II
- Leetcode: Populating Next Right Pointers in Each Node
- [Leetcode] Populating Next Right Pointers in Each Node ii
- leetcode Populating Next Right Pointers in Each Node II
- 【leetcode】Populating Next Right Pointers in Each Node
- log4j2.1使用指南[二] Web工程
- 安卓点击返回按键退出应用程序
- Matlab读写文件
- netduino制作dfu升级文件
- zoj 1051 A New Growth Industry
- [leetcode] Populating Next Right Pointers in Each Node
- Spring注解@Component、@Repository、@Service、@Controller区别
- linux公社以及下载账户
- iOS开发UISlider滑动条的属性介绍以及于标签联合使用实时显示变动值
- 删除IE input 下的小叉叉
- JAVABEAN转换为XML
- MYSQL-手工SQL注入绕过技巧-实战篇
- Rad Hat Enterprise Linux 6.0 安装 tomcat
- grep用法