[LeetCode] 152. Maximum Product Subarray
来源:互联网 发布:nginx grpc 编辑:程序博客网 时间:2024/05/02 02:29
思路:
类似动态规划的思路. 一个变量记录当前最大乘积, 一个记录最小的, 记录最小的是因为有可能负负得正直接小的就变成大的了. 然后遍历输入向量, 如果当前数字是负数, 咱们就交换最大乘积和最小乘积, 然后更新最大值和最小值. 对于最大值的更新规则是, 新的乘积如果大于等于原乘积, 那就保留, 否则就舍弃原来的结果, 直接用当前遍历到的那个数即可. 最小值相同的思路.
int maxProduct(vector<int>& nums) { if (nums.empty()) return 0; int maxProd = nums[0]; int minProd = nums[0]; int res = nums[0]; for (int i = 1; i < nums.size(); i++) { if (nums[i] < 0) swap(maxProd, minProd); maxProd = max(maxProd * nums[i], nums[i]); minProd = min(minProd * nums[i], nums[i]); res = max(res, maxProd); } return res;}
0 0
- LeetCode 152. Maximum Product Subarray
- [leetcode] 152.Maximum Product Subarray
- [LeetCode]152. Maximum Product Subarray
- leetcode:152. Maximum Product Subarray
- leetcode 152. Maximum Product Subarray
- 152. Maximum Product Subarray LeetCode
- [leetcode] 152. Maximum Product Subarray
- LeetCode *** 152. Maximum Product Subarray
- LeetCode 152. Maximum Product Subarray
- leetcode.152. Maximum Product Subarray
- LeetCode-152.Maximum Product Subarray
- LeetCode - 152. Maximum Product Subarray
- [Leetcode]152. Maximum Product Subarray
- LeetCode 152. Maximum Product Subarray
- leetcode:152. Maximum Product Subarray
- [leetcode]152. Maximum Product Subarray
- LeetCode 152. Maximum Product Subarray
- [LeetCode] 152. Maximum Product Subarray
- bzoj 2927 博弈论
- greendao 数据库工程里使用的问题 database from version 3 to 1
- 通过IIS配置网站和相关错误处理
- Struts2入门——4,访问Action
- 找出出现次数大于等于总数一半的数 (O(1)空间 O(n)时间)
- [LeetCode] 152. Maximum Product Subarray
- 声明
- Make编译学习笔记(三)Makefile基本规则
- Perl语言入门(09 perl中自带的函数)
- 结构体指针分析
- 最长严格上升子序列
- HTML5所有标签汇总
- android application方法执行多次
- 首大写