连续子数组的最大和
来源:互联网 发布:终极算法pdf网盘 编辑:程序博客网 时间:2024/05/29 08:31
题目描述:输入一个整形数组,数组里面有正数也有负数,数组中一个或连续的多个整数构成一个子数组,求所有子数组的和的最大值,要求时间复杂度为O(n)。
思路分析:
代码分析:
#include<iostream>#include<vector>using namespace std;int FindMax(vector<int> &vec){int max = 0x80000000;//最小的负数int tmp = 0;//临时值vector<int>::iterator it = vec.begin();//指向开头while(it!=vec.end()){if(tmp <= 0) //如果tmp变成小数了,就要把tmp的值更新到当前的下标下;{tmp = *it;}else{tmp += *it;//否则就累计相加}if(tmp > max) //max一直保存当前最大的;{max = tmp;}++it;}return max;}int main(){int num = 0;cin>>num;vector<int> vec;while(num>0){int tmp = 0;cin>>tmp;vec.push_back(tmp);num --;}cout<<FindMax(vec)<<endl;return 0;}
阅读全文
0 0
- 数组连续子数组的和最大
- 数组连续子数组的最大和
- 连续子数组的最大和
- 连续子数组的最大和
- 连续子数组的最大和
- 求连续子数组的最大和
- 连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 连续子数组的最大和
- 连续子数组的最大和
- (8)连续子数组的最大和
- 求连续子数组的最大和
- 求连续子数组的最大和
- 连续子数组的最大和
- 求连续子数组的最大和
- 连续子数组的最大和
- 连续子数组的最大和
- JSONObject对象判断为null不成立,报错net.sf.json.JSONException: null object
- SUSE 11 SP3上部署MySQL MHA
- 搜狗笔试题
- pdf阅读器怎么样去添加箭头啊
- easyUI的datebox,开始/结束日期不得大于当前日期,开始日期不得大于结束日期
- 连续子数组的最大和
- 学会思考,而不只是编程
- 出入栈顺序判断
- 导入项目时遇到的plugin with id com.android.application not found问题解决方案
- CentOS7更改默认启动桌面(或命令行)模式
- ADF表格导入报错:NoClassDefFoundError: org/openxmlformats/schemas/drawingml/x2006/main/ThemeDocument
- hive中UDTF编写和使用
- 【Android】欢迎界面的实现
- linux ubuntu忘记登陆密码