LeetCode刷题笔记-递归-反转二叉树

题目描述:

翻转一棵二叉树。

LeetCode刷题笔记-递归-反转二叉树

解题思路:

  1、对于二叉树,立马递归

  2、先处理 根节点,不需改动

  3、处根的左子树和右子树需要交换位置

  4、递归处理左子树和右子树。步骤见1-3步

Java代码实现:

 1 /**
 2  * Definition for a binary tree node.
 3  * public class TreeNode {
 4  *     int val;
 5  *     TreeNode left;
 6  *     TreeNode right;
 7  *     TreeNode(int x) { val = x; }
 8  * }
 9  */
10 class Solution {
11     public TreeNode invertTree(TreeNode root) {
12         if(root==null){
13             return null;
14         }
15         TreeNode temp= root.left;
16         root.left=root.right;
17         root.right=temp;
18         invertTree(root.left);
19         invertTree(root.right);
20         return root;
21     }
22 }

 

上一篇:LeetCode 226 Invert Binary Tree 解题报告


下一篇:关于opencv 学习笔记(1)