【面试题】剑指Offer-19-二叉树的镜像

来源:互联网 发布:win7注册表卸载软件 编辑:程序博客网 时间:2024/05/22 05:30

题目概述


解题思路

首先,我们需要知道什么是二叉树的镜像


如图所示,这两颗二叉树便互为镜像

实现方法,前序遍历这颗二叉树

如果遇到空节点,就返回

否则交换两个子孩子

遍历完后,便得到了二叉树的镜像

代码实现

//二叉树的镜像void TreeMirror(TreeNode* root){if (root == NULL)return;//交换每个节点的根节点std::swap(root->_left, root->_right);TreeMirror(root->_left);TreeMirror(root->_right);}

题目扩展

非递归怎么实现呢?

其实也很简单

用二叉树的前序非递归遍历即可

1 0
原创粉丝点击