zoukankan      html  css  js  c++  java
  • 152. Maximum Product Subarray

    package LeetCode_152
    
    /**
     * 152. Maximum Product Subarray
     * https://leetcode.com/problems/maximum-product-subarray/description/
     *
     * Given an integer array nums,
     * find the contiguous subarray within an array (containing at least one number) which has the largest product.
    
    Example 1:
    Input: [2,3,-2,4]
    Output: 6
    Explanation: [2,3] has the largest product 6.
     * */
    class Solution {
        fun maxProduct(nums: IntArray): Int {
            if (nums == null || nums.size == 0) {
                return 0
            }
            var res = nums[0]
            var minValue = nums[0]
            var maxValue = nums[0]
            for (i in 1 until nums.size) {
                val temp1 = minValue * nums[i]
                val temp2 = maxValue * nums[i]
                minValue = Math.min(nums[i], Math.min(temp1, temp2))
                maxValue = Math.max(nums[i], Math.max(temp1, temp2))
                res = Math.max(res, maxValue)
            }
            return res
        }
    }
  • 相关阅读:
    java I/O框架 (三)基本流
    java I/O框架 (二)文件操作(File)
    java I/O框架 (一)总览
    8.内部类
    7.权限
    6.继承
    5.代码块
    4.面向对象
    3控制语句
    PHP ksort() 函数
  • 原文地址:https://www.cnblogs.com/johnnyzhao/p/12774594.html
Copyright © 2011-2022 走看看