LeetCode之Peak Index in a Mountain Array(Kotlin)

本文介绍了一种算法,用于在确定为山形的数组中查找并返回顶峰元素的索引。通过遍历数组,比较每个元素与其前后的元素,找出满足山形条件的最高点。

问题: Let's call an array A a mountain if the following properties hold: A.length >= 3 There exists some 0 < i < A.length - 1 such that A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1] Given an array that is definitely a mountain, return any i such that A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1].


方法: 遍历数组,找到山峰所在的index输出即可。

具体实现:

class PeakIndexInAMountainArray {
    fun peakIndexInMountainArray(A: IntArray): Int {
        var peakIndex = 0
        for (i in A.indices) {
            if (A[i] > A[peakIndex]) {
                peakIndex = i
            }
        }
        return peakIndex
    }
}

fun main(args: Array<String>) {
    val array = intArrayOf(0,1,0)
    val peakIndexInAMountainArray = PeakIndexInAMountainArray()
    println("result: ${peakIndexInAMountainArray.peakIndexInMountainArray(array)}")
}
复制代码

有问题随时沟通

具体代码实现可以参考Github

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值