1. 程式人生 > >java 反轉二叉樹演算法

java 反轉二叉樹演算法

題目:Invert a binary tree.

    4
   /   \
  2     7
 / \   / \
1   3 6   9

to

     4
   /   \
  7     2
 / \   / \
9   6 3   1

下面是我給出的演算法:

/**
 * 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 invertTree(TreeNode root) { if(root==null){ return null; } if(root.left!=null){ invertTree(root.left); } if(root.right!=null){ invertTree(root.right); } TreeNode temp = root.left; root.left = root.right; root.right = temp; return
root; } }