void max(int[] x){
int maxendinghere=0;
int maxsofar=0;
int l=0,u=0;//新数组的下界与上界
for (int j = 0; j < x.length; j++) {
if(maxendinghere+x[j]>0){
maxendinghere=maxendinghere+x[j];
}else{
l=j+1;
maxendinghere=0;
}
if(maxsofar<maxendinghere){
maxsofar=maxendinghere;
u=j;
}
}
System.out.println(l);
System.out.println(u);
}
参考编程珠玑,并修改
分享到:
相关推荐
分而治之的思想解决求一个数组的最大子集,有效的降低了时间复杂度,值得学习。
算法设计:对于给定的正整数的集合S={x1,x2,...,xn}和正整数c,计算S的一个子集S1,使得子集里的元素之和为c。 数据输入:由文件input.txt提供输入数据。文件第1行有2个正整数n和c,n表示S的大小,c是子集和的目标值...
今天完成一个算法的过程中,有几个需求模块,其中就有判断$a数组是否是$b数组的子集,可能最近我写c比较多,直接就用for循环实现了,但是感觉代码量比较大,不够优雅!在qq群里集思广益了一下,发现很多php提供的...
已知N个大于0的整数构成一个集合,即{1,2,3,……,N},求其所有的非空且元素不相邻的子集,计算所有子集的乘积的平方的和。
# 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 # 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 # 示例 1: # 输入:nums = [1,2,3] # 输出:[[],[1],[2],[1...
子集和问题的一个实例为〈S,c〉。其中,S={x1,x2,…,xn}是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得 ∑x=c, (其中x∈S1)。试设计一个解子集和问题的方法。你可以假设处理范围...
求一个集合子集的算法示例, 用两种方法解,一种是基于回溯的递归求解,一种基于位域映射.
子集和。近似算法能够获得近似值和近似解,并且是一种完全多项式时间近似方案。 包括指数时间算法、修整算法、近似算法,可以获得近似值和近似解
数组子集
子集和问题判定是否存在S的一个子集S1,使得x∈S1,∑x=c. 试设计一个解子集和问题的回溯法。 «编程任务: 对于给定的正整数的集合S={x1,x2,...,xn}和正整数c,编程计算S 的一个子集 S1,使得x∈S1,∑x=c. ...
子集和问题的一个实例为?St?〈St〉。其中,S={x1,x2,…,xn}S={x1,x2,…,xn}是一个正整数的集合,c是一个正整数。子集和问题判定是否存在 S 的一个子集 S1,使得 ∑x∈S1x=c ∑x∈S1x=c。试设计一个解子集和...
试写一个递归算法实现求一个集合的所有子集。 算法设计: 给定一个非空的集合,用递归算法输出它的所有子集。 数据输入: 由文件input.txt 提供输入数据。文件第1行是集合中的元素个数,第2行是集合的元素序列(元素...
java实验--求一个集合的子集,非递归实现。
很多人在算法分析中说打印子集很难 我当初用c编写的一个程序,是利用文件的打开,复制存取中间子集来实现了打印所有的子集
输入一个数组,求最大子集和,该子集和能被7整除。 如输入7 1 3 4 5,则输出14。 最多输入10000个数。 代码还有欠缺部分,没有考虑某些边缘条件,代码感觉比较冗长,应该是还有更优解的,暂时水平不够,还没有完善。
子集和暴力回溯求解,适合浮点、整数求解,返回二维数组,使用小批量数据,慎用
C/C++ 求一个集合的子集,代码易懂,好用,谢谢下载
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1...