要求打印对应的最短的最大子序列
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int len = nums.size();
int sum = nums[0];
int res = nums[0];
int ed = 0;
int tmp_cnt = 1;
int cnt = 1;
for (int i = 1; i < nums.size(); i++)
{
int num = nums[i];
if (sum > 0)
{
sum += num;
tmp_cnt++;
}
else
{
sum = num;
tmp_cnt = 1;
}
if (sum > res)
{
cnt = tmp_cnt;
ed = i;
res = sum;
}
}
for (int i = ed - cnt + 1; i <= ed; i++) cout << nums[i] << " ";
cout << endl;
return res;
}
};
2.编辑距离的具体实现