Kotlin 题解 | #删除链表峰值#

删除链表峰值

https://www.nowcoder.com/practice/30a06e4e4aa549198d85deef1bab6d25

/**
 * class ListNode(var `val`: Int) {
 *     var next: ListNode? = null
 * }
 */
object Solution {
    /**
    * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
    *
    * 
        * @param head ListNode类 
        * @return ListNode类
    */
    fun deleteNodes(head: ListNode?): ListNode?  {
        // write code here
        var pre: ListNode? = null
        pre = head
        var cur: ListNode? = null
        cur = head
        cur = cur?.next
        while(cur != null) {
            if(cur.next != null && pre != null && cur.`val` > (pre?.`val` ?: 0) && cur.`val` > cur?.next.`val`) {
                pre?.next = cur.next
            }
            pre = cur
            cur = cur.next
        }
        return head
    }
}



从新刷题第一题,涨涨信心,顺便看到也没有 Kotlin 版本的题解,正好贡献一版,给大家抛个砖。

主要就是别忘记判空

全部评论

相关推荐

每晚夜里独自颤抖:你cet6就cet6,cet4就cet4,你写个cet证书等是什么意思。专业技能快赶上项目行数,你做的这2个项目哪里能提现你有这么多技能呢
点赞 评论 收藏
分享
07-07 12:25
门头沟学院 Java
程序员牛肉:你这个智邮公司做的就是那个乐山市税务系统的服务吗?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务