Maximum Subarray(最大连续子串)

 1 class Solution {
 2 public:
 3     //动态规划,维护两个变量  local[i+1]=max(array[i],local[i]+array[i+1])
 4     int FindGreatestSumOfSubArray(vector<int> array) {
 5         int len=array.size();
 6         if(len==0) return 0;
 7         if(len==1) return array[0];
 8         int local=array[0];
 9         int global=array[0];
10         for(int i=1;i<array.size();i++)
11         {
12             local=max(array[i],array[i]+local);//local>0?local+array[i]:array[i]
13             global=max(local,global);
14         }
15         return global;
16     }
17 };

 

posted on 2017-12-01 15:24  wsw_seu  阅读(96)  评论(0编辑  收藏  举报

导航