给出一数组a,求最大子数组乘积
算法思路:用动态垃规划.用maxValue(n)表示从0到n的最大子数组乘积,minValue(n)表示从0到n的最小子数组乘积。
状态转移方程为:
minValue(n)= min{minValue(n-1)*a[n], maxValue(n-1)*a[n], a[n]}
maxValue(n)=max{minValue(n-1)*a[n], maxVal...
分类:
编程语言 时间:
2015-09-05 12:33:45
阅读次数:
312
对于最优化的子数组问题,一名话,就是从给你的数组中寻找一个子数组,使得它的和是最优的(最大/最小)假如求最大子数组: 如果数组中元素全是正的,那么好办,整个数组的和就是了。 如果数组中元素全是负的,那么也好办,找最小的那个。 但是如果正负相间呢???如上图中,如何求出那个最大的子数组呢?显然我们可以...
分类:
编程语言 时间:
2015-07-17 20:36:05
阅读次数:
179
返回一个二维整数数组中最大联通子数组的和2015年6月22日1.题目输入一个二维整形数组,数组里有正数也有负数。二维数组首尾相接,象个一条首尾相接带子一样。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。2.设计思路参照环状一维数组,将二维数组进行扩展。只将...
分类:
编程语言 时间:
2015-06-22 22:09:00
阅读次数:
146
题目:返回一个整数数组中最大子数组的和。要求:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。1.设计思想 首先是用random产生随机数,可以产生政府混合,怎么求最大子数组,重点是2个思想....
分类:
编程语言 时间:
2015-06-21 13:06:11
阅读次数:
146
#include
using namespace std;int getmaxsum(int a[],int n)
{
int i = 0;
int j ;
int k;
int sum = 0;
int save = 0;
for (; i <= n; i++)
{
for (j = 0; j < i;...
分类:
编程语言 时间:
2015-06-08 01:04:53
阅读次数:
218
1.实验要求 随机产生一个二维整形数组,数组里有正数也有负数。 二维数组首尾相接,象个一条首尾相接带子一样。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。2.实验思路 先随机产生一个二维数组; 二维数组的第一列移动到最后一列,求最大的子数组...
分类:
编程语言 时间:
2015-04-24 08:57:41
阅读次数:
134
设计思想:综合了前面一维数组成环和二维数组求最大子数组的思想。屏幕截图::总结:把做过的程序封装成一个个的接口,当使用时直接调用即可。源代码://jiangzhongxi2015/4/16#includeusingnamespacestd;voidmax(introw,intcol){int**a....
分类:
编程语言 时间:
2015-04-23 21:39:38
阅读次数:
175
环形数组求最大子数组之和:实验要求:随机产生一个整形数组,假设首尾相连为环形,求其相连的字数组的和,并输出子数组的元素。设计思路:因为是环形,所以要考虑自设的头尾的情况,在此分为两大类考虑,一种为数组中存在正数情况,一种为全部为负数的情况;在存在正数的情况中又可分为三种情况,一种为全部为正数的情况,...
分类:
编程语言 时间:
2015-04-17 09:36:57
阅读次数:
151
题目: 随机出一个一维数组,设该数组为循环数组,求其最大小子数组。一、设计思路 求最大子数组,就求出最大的连续正子数组。 将数组分为全负和有非负值两种情况。全负求出最大值即可。 在有非负值的情况下,先判断该随机数组的首尾是否相连,即首尾是否都大于等于零。如果首尾相连,则将该一维数组分为首、中、尾三部...
分类:
编程语言 时间:
2015-04-17 09:34:21
阅读次数:
189
1.结组成员 张晨建、周盼超2.实现功能 随机产生一个二维整形数组,数组里有正数也有负数。 二维数组中连续的一个子矩阵组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。3.设计思路 我感觉,这应该是最笨的方法了吧,我们用了用了四个for嵌套。思路很简单:每一行每一行的求...
分类:
编程语言 时间:
2015-04-17 08:25:10
阅读次数:
163