1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| class Solution { public void flatten(TreeNode root) { if(root == null) { return; } List<Integer> list = new ArrayList<>(); dfs(root, list); TreeNode cur = root; for(int i = 1; i < list.size(); i ++) { cur.left = null; cur.right = new TreeNode(list.get(i)); cur = cur.right; } }
private void dfs(TreeNode node, List<Integer> list) { if(node == null) return; list.add(node.val); dfs(node.left, list); dfs(node.right, list); } }
|