Recca Chao 的 gitHub page

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

View on GitHub

Kotlin Leetcode - 1051. Height Checker

題目連接

class Solution {
    fun heightChecker(heights: IntArray): Int {
    }
}

解題思路

這一題考的是陣列的處理

邏輯相對直觀

迴圈的部分可以選用 forEachIndexed 實作

Kotlin 參考解答

點擊展開解答

用 for 迴圈實作的方式

class Solution {
    fun heightChecker(heights: IntArray): Int {
        val expect = heights.copyOf()
            .apply {
                sort()
            }
        var count = 0
        for (i in heights.indices) {
            if (heights[i] != expect[i]) {
                count++
            }
		}
        return count
    }
}

forEachIndexed 實作的方式如下

class Solution {
    fun heightChecker(heights: IntArray): Int {
        val expect = heights.copyOf()
            .apply {
                sort()
            }
        var count = 0
        heights.forEachIndexed { i, _ ->
            if (heights[i] != expect[i]) {
                count++
            }
        }
        return count
    }
}

回到 leetcode 列表