有一个点需要注意,之前我认为null是不可以被赋值的,现在发现我错了,之前之所以会报错是因为node是空的话,他是没有left这个属性的,所以会点不出来
public TreeNode invertTree(TreeNode root) { travel(root); return root; } public void travel(TreeNode node){ if(node != null){ TreeNode temp = node.left; node.left = node.right; node.right = temp; travel(node.left); travel(node.right); } }
2020-04-10,今天在leetcode重新做了一遍,还是easy的
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public TreeNode invertTree(TreeNode root) { if (root == null) { return root; } TreeNode temp = root.left; root.left = root.right; root.right = temp; invertTree(root.left); invertTree(root.right); return root; } }