本文共 760 字,大约阅读时间需要 2 分钟。
Solution1:
递归解法,牢记! 根结点为空的情况容易漏,注意!/*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 == 0)//若整棵树的根结点为空则return return; if(pRoot->left == NULL && pRoot->right == NULL)//到达叶子结点,return return; struct TreeNode *temp; if(pRoot->left != NULL || pRoot->right != NULL){ //存在子树,则交换之 temp = pRoot->left; pRoot->left = pRoot->right; pRoot->right = temp; } if(pRoot->left) Mirror(pRoot->left); if(pRoot->right) Mirror(pRoot->right); }};
转载地址:http://kxhdb.baihongyu.com/