Recca Chao 的 gitHub page

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

View on GitHub

Kotlin Leetcode - 53. Maximum Subarray

題目連接

class Solution {  
    fun maxSubArray(nums: IntArray): Int {  
    }  
}

解題思路

這題考的是陣列的結構

我們可以暴力破解

將所有的答案計算出來之後得到解答

Kotlin 參考解答

利用一個陣列紀錄之前累積答案的作法如下

class Solution {  
    fun maxSubArray(nums: IntArray): Int {  
        var max = nums[0]  
        var current = 0  
        nums.forEach {  
            current = maxOf(current + it, it)  
            max = maxOf(max, current)  
        }
        return max  
    }  
}