Recca Chao 的 gitHub page

推廣網站開發,包含 Laravel 和 Kotlin 後端撰寫、自動化測試、讀書心得等。Taiwan Kotlin User Group 管理員。

View on GitHub

Kotlin Leetcode - 104. Maximum Depth of Binary Tree

題目連接

class Solution {  
    fun maxDepth(root: TreeNode?): Int {  
    }  
}

解題思路

這題是處理樹的結構

可以用遞迴的角度思考

Kotlin 參考解答

/**
 * 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 maxDepth(root: TreeNode?): Int {
        return when (root) {
            null -> 0
            else -> maxOf(maxDepth(root!!.left), maxDepth(root!!.right)) + 1
        }
    }
}