Java for LeetCode 114 Flatten Binary Tree to Linked List
Given a binary tree, flatten it to a linked list in-place.
For example,
Given
1
/ \
2 5
/ \ \
3 4 6
The flattened tree should look like:
1
\
2
\
3
\
4
\
5
\
6
解题思路:
试图通过排序后new TreeNode是无法通过的,这道题的意思是把现有的树进行剪枝操作。JAVA实现如下:
static public void flatten(TreeNode root) { while(root!=null){ if(root.left!=null){ TreeNode pre = root.left; while(pre.right!=null) pre = pre.right; pre.right = root.right; root.right = root.left; root.left = null; } root = root.right; } }