❝
这是一道 「简单」 题
https://leetcode.cn/problems/invert-binary-tree/❞
题目
给你一棵二叉树的根节点 ,翻转这棵二叉树,并返回其根节点。
示例 1:
/**
* Definition for a binary tree node.
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
func invertTree(root *TreeNode) *TreeNode {
if root == nil {
return nil
}
left, right := root.Left, root.Right
root.Left = invertTree(right)
root.Right = invertTree(left)
return root
}
复杂度分析
-
时间复杂度:,为二叉树中节点的个数,每个节点交换子节点的时间复杂度为,总共有个节点,所有总的时间复杂度为。 -
空间复杂度:,空间复杂度为调用栈的深度,最多为层,即二叉树退化成链表的时候。
- End -
本篇文章来源于微信公众号: i余数
微信扫描下方的二维码阅读本文

Comments NOTHING