Binary Tree Upside Down
来源:互联网 发布:sql2000备份50g数据库 编辑:程序博客网 时间:2024/05/21 06:43
Binary Tree Upside Down
Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left node that shares the same parent node) or empty, flip it upside down and turn it into a tree where the original right nodes turned into left leaf nodes. Return the new root.
For example:Given a binary tree
{1,2,3,4,5}
,1 / \ 2 3 / \4 5
return the root of the binary tree [4,5,2,#,#,3,1]
.
4 / \ 5 2 / \ 3 1
confused what "{1,#,2,3}"
means? > read more on how binary tree is serialized on OJ.
It is easy to find that the original left child will become the root and his left child is the original root's right child, his right child is the original root. so we can simply use a iterative to implement this.
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { public TreeNode upsideDownBinaryTree(TreeNode root) { if (root == null) return null; TreeNode p = root, parent = null, parentRight = null; while (p != null) { TreeNode left = p.left; p.left = parentRight; parentRight = p.right; p.right = parent; parent = p; p = left; } return parent; }}
0 0
- Binary Tree Upside Down
- Binary Tree Upside Down
- Binary Tree Upside Down
- Binary Tree Upside Down
- Binary Tree Upside Down
- Binary Tree Upside Down
- Binary Tree Upside Down
- [Leetcode] Binary Tree Upside Down
- LeetCode Binary Tree Upside Down
- leetcode Binary Tree Upside Down
- [Leetcode] Binary Tree Upside Down
- leetcode--Binary Tree Upside Down
- [LeetCode156] Binary Tree Upside Down
- LeetCode-Binary Tree Upside Down
- [LeetCode156] Binary Tree Upside Down
- Leetcode Binary Tree Upside Down
- 156. Binary Tree Upside Down
- 156. Binary Tree Upside Down
- C++ 容器及选用总结
- 安卓5.0手机开启USB调试
- ContentProvider和SQLite数据库
- 薛定谔的猫
- Python最简单的图形编程
- Binary Tree Upside Down
- 聚类算法之混合高斯模型
- hdu 2079 选课时间(题目已修改,注意读题) (母函数)
- 在TStatusBar状态栏上自绘防闪烁
- 对Java类加载、实例化执行过程的理解
- 黑马程序员————List集合概述、Arrayist集合、Vector集合、LinkedList集合简述
- 算法之最大连续子序列之和之变形题目
- 理解了DirectShow播放原理
- Codec Engine 开发