操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:
二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5
/*
struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/ class Solution { public: void Mirror(TreeNode *pRoot) { if(pRoot == NULL){ return; } TreeNode *tmp = pRoot->left; pRoot->left = pRoot->right; pRoot->right = tmp; //Mirror(left); Mirror(pRoot->left); Mirror(pRoot->right); } };
java代码:
/** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { public void Mirror(TreeNode root) { if(root==null) return; TreeNode tmp = root.left; root.left=root.right; root.right=tmp; Mirror(root.left); Mirror(root.right); } }
剑指Offer——二叉树的镜像
最新推荐文章于 2022-07-04 22:31:57 发布