程序员编程艺术:求连续子数组的最大和
来源:互联网 发布:预防网络诈骗图片 编辑:程序博客网 时间:2024/04/28 17:25
鸣谢:感谢@July,您的博客给予我很大的帮助,增强了我学习的动力。希望分享的力量永传!!!
问题来源:http://blog.csdn.net/v_JULY_v/article/details/6444021
问题来源作者:@July
本文作者:@baoquanz
本文仅给予一种实现,增加输出最大序列。
#include <iostream>using namespace std;//left和right记录最大序列的开始和结束位置int max_func(int* a, int len, int& left, int& right){int* b = new int[len];right = 0;int max = a[0];b[0] = a[0];for (int i=1; i<len; ++i){if (b[i-1] <= 0){b[i] = a[i];}else{b[i] = b[i-1] + a[i];}if (b[i] > max){max = b[i];right = i;}}int tmp = right;left = tmp;for (; tmp>=0; --tmp) //寻找left位置{if (b[tmp]<0){break;}left = tmp;}delete[] b;return max;}int main(){int N;cin>>N;int* a = new int[N];for (int i=0; i<N; ++i){cin>>a[i];}int left, right;cout<<max_func(a, N, left, right)<<endl;for (; left<=right; ++left){cout<<a[left]<<" ";}cout<<endl;delete[] a;return 0;}
0 0
- 程序员编程艺术:求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 程序员编程艺术:第七章、求连续子数组的最大和
- 【程序员编程艺术】第七章:最大连续子数组和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- Linux命名管道FIFO
- openssl 生成CSR
- android 修改默认时间为24小时格式
- WorkSpaces和AWS的市场预测
- poj 2186 Popular Cows(tarjan + 强连通分量 + 缩点)
- 程序员编程艺术:求连续子数组的最大和
- Log4J学习【十三】Properties文件中能够定义的配置项的格式和示例二
- printf 和 scanf
- 批量转数据源
- MyEclipse 导入 .war 包
- vim使用小技巧
- 使用sqlldr导入文件注意事项
- test
- 为什么软件开发方法论让你觉得糟糕?