递归翻转二叉树(C++)

递归翻转二叉树(C++),第1张

题目:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

226. 翻转二叉树

示例 1:
输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

思路:递归实现前序遍历,前序遍历所有节点,并交换每一个节点的左孩子和右孩子。

代码:

class Solution {	//226. 翻转二叉树
public:
	TreeNode* invertTree(TreeNode* root) {
		if (root == nullptr)return root;
		TreeNode* node = root->left;
		root->left = root->right;
		root->right = node;
		invertTree(root->left);
		invertTree(root->right);
		return root;
	}
};

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1323895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-12
下一篇 2022-06-12

发表评论

登录后才能评论

评论列表(0条)

保存