返回一个整数数组中最大子数组的和
2015-04-02 18:07
190 查看
设计思路 :原本打算利用指针创建数组,然后根据for语句一次求出各个数组的和,后来感觉
这样做太复杂,只能求助荣道,利用他的思路,直接计算各个数组的和,再与最大值比较。
代码:
截图结果:
个人总结:取的最大值没有在数组循环当中,m,n的取值为i,j。编程需要的是耐心,只有细节才能决定一切,不能只知道大概就以为自己学会了,引以为戒。
这样做太复杂,只能求助荣道,利用他的思路,直接计算各个数组的和,再与最大值比较。
项目计划总结 | ||||
姓名: | 张少朋 | 日期:2015/3/24 | ||
找突破口 | 设计思路 | 编程 | 总结心得 | |
星期六 | 60分钟 | 20分钟 | 0 | 0 |
星期日 | 0 | 30分钟 | 30分钟 | 0 |
星期一 | 0 | 45分钟 | 10分钟 |
#include<iostream> #include<ctime> using namespace std; void main() { int a[10]; int f; int i, j, k; int sum, max = -100; int m, n; cout << "请输入数值范围:"; cin >> f; srand((unsigned)time(NULL)); for (i = 0; i<10; i++) { a[i] = (rand() % 2 ? -1 : 1)*rand() % f; cout << a[i] << " "; } cout << endl; for (i = 0; i<10; i++) { for (j = 0; j <= i; j++) { sum = 0; for (k = j; k <= i; k++) sum = sum + a[k]; if (sum>max) { max = sum; m = j; n = i; } } } cout << "子数组的最大值为:" << max << endl; cout << "子数组是第" << m + 1 << "个数,到第" << n + 1 << "个数。" << endl; cout << "子数组是:"; for (i = m; i <= n; i++) { cout << a[i] << " "; } cout << endl; }
截图结果:
个人总结:取的最大值没有在数组循环当中,m,n的取值为i,j。编程需要的是耐心,只有细节才能决定一切,不能只知道大概就以为自己学会了,引以为戒。
相关文章推荐
- 3月17号周二课堂练习:结对开发----返回一个整数数组中最大子数组的和一
- 返回一个整数数组中最大子数组的和
- 3月24号周二课堂练习:结对开发----返回一个整数数组中最大子数组的和二
- 返回一个整数数组中最大子数组的和-课堂训练(子数组为连续)
- 返回一个整数数组中最大子数组的和
- 结对开发之《返回一个整数数组中最大子数组的和》
- 3月27号周五课堂练习:结对开发----返回一个整数数组中最大子数组的和三
- 返回一个整数数组最大子数组的和
- 题目:返回一个整数数组中最大子数组的和。(要求程序必须能处理1000 个元素)
- 返回一个整数数组(环形数组)中最大子数组的和
- 结对开发之返回一个整数数组中最大子数组的和
- 课堂练习之结对开发项目思想总结:返回一个整数数组中最大子数组的和
- 返回一个整数数组中最大子数组的和
- 返回一个整数数组中最大子数组的和
- 返回一个二维整数数组中最大子数组的和1
- 题目:给一个排序好的整数数组A,请写一个函数,输入是数组A和一个整数x,返回数组A中值小于x的最大元素的索引值
- 软件工程结对开发——返回一个整数数组中最大子数组的和(JAVA)
- 返回一个整数数组中最大子数组的和
- 返回一个整数数组中最大子数组的和
- 返回一个整数数组中最大子数组的和(升级版)