软件工程个人作业4(课堂练习&&课堂作业)
题目:返回一个整数数组中最大子数组的和。
要求:1、输入一个整型数组,数组里有正书和负数。
2、数组中连续的一个或者多个整数组,每个子数组都有一个和。
3、求所有子数组的和的最大值。要求时间复杂度为0(n)。
设计思想:
1、定义一维数组,为实现可以输入任意多个值在此处用到vectors容器。
2、输入
3、实现方法:从两头进行。以数组的前端为例,比较下标为0与下标为1的两个元素进行比较选择,若下标为0的元素的数值小于0则直接舍弃,若大于零则将该元素的值与下标为1的元素相加并赋值给下标为1的元素,在进行循环。
程序代码:
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std; int main()
{
int t;
int a;
int max;
vector<int>ivec1;//创建vector对象
vector<int>::size_type iz;//数组的程度为iz;
cout << "请输入一组数:" << endl;
while(cin>>a)
{
ivec1.push_back (a);
if(getchar()=='\n')
break;
} iz=ivec1.size();
cout << "数字元素的个数:" << iz << endl; for(int i = ;i < iz/;i++)
{
if(ivec1[i] < )
{
t = ivec1[i+];
}
if(ivec1[i] > )
{
t = ivec1[i] + ivec1[i+];
}
ivec1[i+] = t;
}
for(int i = iz-;i > iz/+;i--)
{
if(ivec1[i] < )
{
t = ivec1[i-];
}
if(ivec1[i] > )
{
t = ivec1[i] + ivec1[i-];
}
ivec1[i-] = t;
} if(ivec1[iz/]>=)
{
max = ivec1[iz/] + ivec1[iz/+];
}
else
max = ivec1[iz/+];
cout << "最大"<< max ;
return ;
}
运行结果截图:

反思总结:这个程序仅仅是考虑了最大值时正数的情况;
遇到的问题:
1、随意输入任意个整型数字(用vectors容器)
2、定义变量max比较存储最大值(开始被忽略了)
3、筛选时要从两头进行。
4、有些情况不能正常运行。
软件工程个人作业4(课堂练习&&课堂作业)的更多相关文章
- 福州大学软件工程1816 | W班 第5次作业成绩排名
写在前面 汇总成绩排名链接 1.作业链接 第五次作业--项目选题报告(团队) 2.评分准则 本次作业映射总分为100分+贡献度得分,由以下部分组成: 选题报告内容(10分) 本组评审表设计(5分) 现 ...
- 软件工程(GZSD2015)第三次作业提交进度
第三次作业题目请查看这里:软件工程(GZSD2015)第三次作业 开始进入第三次作业提交进度记录中,童鞋们,虚位以待哈... 2015年4月19号 徐镇.尚清丽,C语言 2015年4月21号 毛涛.徐 ...
- 《软件工程和Python》第0周作业1
写在前面的话 欢迎大家开始一段新的课程学习!从开博客开始吧.每次博客作业都会有评分,计入总成绩哦. 1. 截止日期 本次作业的提交截止时间:见老师要求 2. 作业要求 (1)建立个人技术博客和 ...
- 福州大学软件工程1816 | W班 第1次作业成绩排名
1.作业地址 第一次作业--准备篇 2.作业要求 (1)回想一下你初入大学时对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的? 你认为过去两年中接触到的课程是否符合你对计算机专业的期待,为什 ...
- 福州大学软件工程1816 | W班 第3次作业成绩排名
写在前面 汇总成绩排名链接 1.作业链接 第三次作业--原型设计(结对第一次) 2.评分准则 本次作业总分 25分,由以下部分组成: (1)在随笔开头请加上该博客链接,以方便阅读时查看作业需求,并备注 ...
- 福州大学软件工程1816 | W班 第7次作业成绩排名
写在前面 汇总成绩排名链接 1.作业链接 第七次作业--项目需求分析(团队) 2.评分准则 本次作业映射总分为100分+贡献度得分,由以下部分组成: 引言(5 points) . 用户场景(15 po ...
- OO第四次博客作业(第四单元作业及期末总结)
(注意:本文写作顺序与作业要求不完全一致,但涵盖了作业的所有要求) 一学期的BUAA特色OO课程结束了. PART 1 我想先写我这一学期的感想 从第一单元满怀期待地写完多项式求值到最后看着60分不 ...
- SQL Server代理(6/12):作业里的工作流——深入作业步骤
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这里系列的前几篇文章所见,SQL ...
- 南京邮电大学java程序设计作业在线编程第二次作业
王利国的"Java语言程序设计第2次作业(2018)"详细 作业结果详细 总分:100 选择题得分:60 1. 表达式9==8&&3<7的运算结果是( ) ...
- 《团队作业》五小福团队作业--UNO-- LandingDay--降落
<团队作业>五小福团队作业--UNO-- LandingDay--降落 写在前面 几周的飞行之后,降落之日也如期而至了.在2018年12月19日我们顺利地完成了项目的总结汇报.但是,短暂的 ...
随机推荐
- 图的最短路算法 Floyd
多源最短路径算法 时间复杂度O(N3) 简单修改可求有向图的传递闭包 #include<iostream> using namespace std; const int maxn=1024 ...
- No.003 Longest Substring Without Repeating Characters
Longest Substring Without Repeating Characters Total Accepted: 167158 Total Submissions: 735821 Diff ...
- Material Design参考资料
传送门: http://www.uisdc.com/comprehensive-material-design-note
- ionic 向後台請求json 數據 在頁面上的顯示問題
我向服務器請求數據,獲取到的數據竟然不能顯示在頁面上 我那個氣啊..... <ul> <!-- <li ng-repeat="phone in phones&quo ...
- web关键词搜索高亮代码
<script type="text/javascript"> /* * 参数说明: * obj: 对象, 要进行高亮显示的html标签节点. * hlWords: 字 ...
- VBS创建数据表
'创建数据表'参数:strDBPath 字符串型 数据库路径'参数:strTableName 字符串型 需要创建的数据表的名称'参数:strColumnName 字符串型 初始化的字段名称,其实可以算 ...
- NSString常见用法总结
//====================NSStirng 的常见用法==================== -(void)testString { //创建格式化字符串:占位符(由一个%加一个字 ...
- VS2010 C++ 操作Excel表格的编程实现
转载请注明原文网址: http://www.cnblogs.com/xianyunhe/archive/2011/09/25/2190485.html 通过VC实现对Excel表格的操作的方法有多种, ...
- poj1942 Paths on a Grid
处理阶乘有三种办法:(1)传统意义上的直接递归,n的规模最多到20+,太小了,在本题不适用,而且非常慢(2)稍快一点的算法,就是利用log()化乘为加,n的规模虽然扩展到1000+,但是由于要用三重循 ...
- Xshell常用命令备忘
(1)命令ls——列出文件ls 显示当前目录文件ls -la 给出当前目录下所有文件的一个长列表,包括以句点开头的隐藏”文件ls a* 列出当前目录下以字母a开头的所有文件ls -l *.doc 给出 ...