Daily LeetCode Challenge - 226. Invert Binary Tree

Min Young Kim·2023년 2월 18일
0

algorithm

목록 보기
76/198

Problem From.

https://leetcode.com/problems/invert-binary-tree/

오늘 문제는 트리가 주어졌을때, 그 트리의 좌우를 뒤집는 문제였다.

처음에는 BFS 로 풀수 있겠다고 생각했는데, 저번에 풀었던 tree 의 max depth 를 구하는 문제가 생각나서 응용하여 풀 수 있었다.

/**
 * Example:
 * var ti = TreeNode(5)
 * var v = ti.`val`
 * Definition for a binary tree node.
 * class TreeNode(var `val`: Int) {
 *     var left: TreeNode? = null
 *     var right: TreeNode? = null
 * }
 */
class Solution {
    fun invertTree(root: TreeNode?): TreeNode? = root?.apply {
        val (l, r) = Pair(left, right)
        left = invertTree(r)
        right = invertTree(l)
    }
}
profile
길을 찾는 개발자

0개의 댓글