码迷,mamicode.com
首页 > 其他好文 > 详细

053. Maximum Subarray

时间:2016-10-31 09:09:55      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:for   bsp   sub   vector   ret   amp   blog   color   nbsp   

 1 class Solution {
 2 public:
 3     int maxSubArray(vector<int>& nums) {
 4         if (nums.size() == 0) return 0;
 5             else {
 6                 int result = nums[0]; int sum = nums[0];
 7                 for (int i = 1; i < static_cast<int>(nums.size()); ++i) {
 8                     if (sum < 0) sum = nums[i];
 9                     else sum += nums[i];
10                     result = max(result, sum);
11                 }
12                 return result;
13             }
14         }
15 };

方法二:动态规划

 1 class Solution {
 2 public:
 3     int maxSubArray(vector<int>& nums) {
 4         if (nums.size() == 0) return 0;
 5         else {
 6             int result = INT_MIN, f = 0;
 7             for (int i = 0; i < static_cast<int>(nums.size()); ++ i) {
 8                 f = max(f + nums[i], nums[i]);
 9                 result = max(result, f);
10             }
11             return result;
12         }
13     }
14 };

 

053. Maximum Subarray

标签:for   bsp   sub   vector   ret   amp   blog   color   nbsp   

原文地址:http://www.cnblogs.com/shadowwalker9/p/6014664.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!