LeetCode(152) Maximum Product Subarray

来源:互联网 发布:国际域名和国别域名 编辑:程序博客网 时间:2024/05/21 10:36

一维动态规划

class Solution {public:    int maxProduct(vector<int>& nums) {        vector<int> minTmp(nums.size(), 0);        vector<int> maxTmp(nums.size(), 0);        vector<int> global(nums.size(), 0);        minTmp[0] = nums[0];        maxTmp[0] = nums[0];        global[0] = nums[0];        for(int i = 1; i < nums.size(); i++) {           minTmp[i] = min(min(nums[i], nums[i] * minTmp[i - 1]), nums[i] * maxTmp[i - 1]);           maxTmp[i] = max(max(nums[i], nums[i] * minTmp[i - 1]), nums[i] * maxTmp[i - 1]);           global[i] = max(global[i - 1], maxTmp[i]);        }        return global[nums.size() - 1];    }
0 0
原创粉丝点击