輸出給定二叉樹的鏡像二叉樹?
思路:鏡像二叉樹,顧名思義左右孩子與原來樹對稱。
因此,就是從根結點開始不斷交換左右孩子,ide
public class BinnaryTree { //交換左右子樹 class TreeNode{ int val;//數據域 TreeNode left=null; TreeNode right=null; public TreeNode(int val){//構造函數 this.val=val; } } public void Mirror(TreeNode root) { if(root==null){//沒有結點 return; } if(root.left==null&&root.right==null){//只有一個根結點無孩子 return; } //有孩子 //交換左右孩子 先處理根 TreeNode temp=root.left; root.left=root.right; root.right=temp; //遞歸 Mirror(root.left); Mirror(root.right); } }