LeetCode: Maximim SubArray
来源:互联网 发布:萨德事件 知乎 编辑:程序博客网 时间:2024/05/21 23:00
https://leetcode.com/problems/maximum-subarray/
题目原意是给定一个序列,找出和最大的连续子序列。如:[-2,1,-3,4,-1,2,1,-5,4],最大子序列是[4,-1,2,1],返回最大和是6。
经典的动态规划问题,在没有思路前一直在用贪心算法的思路,后来看了别人的博客才发现思路不对,应该用动态规划来做。这道题代码很简单,但是思路却没那么简单。 一个重要的思路是: 假设[i,j] 为最大子序列,那么对任意的k, i
int maxSubarray(vector<int> vec){ if(vec.size() == 0) return 0; int localmax = vec[0]; int allmax = vec[0]; for(int i =1; i<vec.size(); i++){ localmax = max(vec[i] , localmax + vec[i]); //假如vec[i] 大于 localmax + vec[i] ,说明localmax为负数,应舍弃。 allmax = max(localmax, allmax); //比较全局最大值和局部最大值 } return allmax;}
后续会给出其他解法。
阅读全文
0 0
- LeetCode: Maximim SubArray
- LeetCode: Maximum Subarray
- LeetCode Maximum Subarray
- [Leetcode] Maximum Subarray
- LeetCode: Maximum Subarray
- leetcode 25: Maximum Subarray
- [LeetCode] Maximum Subarray
- [Leetcode] Maximum Subarray
- [LeetCode]Maximum Subarray
- [leetcode]Maximum Subarray
- LeetCode-Maximum Subarray
- [leetcode] Maximum Subarray
- LeetCode 45: Maximum Subarray
- LeetCode - Maximum Subarray
- LeetCode:Maximum Subarray
- LeetCode 53: Maximum Subarray
- 【leetcode】Maximum Subarray
- Leetcode Maximum Subarray
- ios语言全球化,本地化工具,一键本地化
- IMAX把VR生意做到了电影院:开VR街机,带来双重娱乐体验
- java 约瑟夫环 数组实现 已测试
- 【Linux】IPC通信之共享内存
- java基础教程:循环流程控制(11)
- LeetCode: Maximim SubArray
- 通过ESP8266手机或电脑浏览器网页能控制远程任意组任意路继电器开关并收发单片机指令 测试OK
- JS中Unix时间戳转换日期格式
- 如何让一个Java类或者方法过时
- BUG_tomcat启动报错Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
- Android如何判断app是否是每日第一次登录
- FZU 2203 单纵大法好 (二分)
- 登陆注册实现流程
- IntelliJ IDEA 常用快捷键整理