226.翻转二叉树
链接: https://leetcode.cn/problems/invert-binary-tree/
代码随想录的解: https://www.programmercarl.com/0226.翻转二叉树.html
go
/**
* 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
}
var dfs func(node *TreeNode)
dfs = func(node *TreeNode) {
node.Left, node.Right = node.Right, node.Left
if node.Left != nil {
dfs(node.Left)
}
if node.Right != nil {
dfs(node.Right)
}
}
dfs(root)
return root
}