08返回一个整数数组中最大子数组的和
要求:
输入一个一维整形数组,数组里有正数也有负数。
一维数组首尾相接,象个一条首尾相接带子一样。
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。
设计思想:
1 设传参的数组长为n,创建长度为2n的辅助数组,按顺序赋两遍值
2 每一个以 i 开头的子数组有 n 个,也就是从 第 i 个到 n+i (i<=n)
3 将得到的子数组求和并存起来,判断和数组中的最大值即可。
源代码:
import java.util.Vector;
public class MaxListNumber {
public static int maxList(int []num) {
int max=-99;
int len=num.length;
if(len<=0) {
System.out.println("数组为空。");
}
else {
Vector<Integer> numx=new Vector<>();
int[]number=new int[2*len];
for(int i=0;i<len;i++) {
number[i]=num[i];
System.out.println("数组元素:"+num[i]);
number[len+i]=num[i];
}
for(int i=0;i<len;i++) {
int temp;
int sum=0;
int count=0;
for(int k=i;k<number.length;k++) {
if(count>=len)
break;
temp=number[k];
sum=sum+temp;
numx.add(sum);
count++;
}
}
max=numx.get(0);
for(int i=0;i<numx.size();i++) {
if(max<numx.get(i)) {
max=numx.get(i);
}
}
}
return max;
}
public static int maxList(int [][]num) {
int max=num[0][0];
for(int i=0;i<5;i++) {
}
return 0;
}
public static void main(String args[]) {
int []number=new int[6];
for(int i=0;i<6;i++) {
number[i]=(int) (Math.random()*10-5);
}
int max=maxList(number);
System.out.println("最大子数组的和:"+max);
}
}
结果截图
总结:
以消耗空间来提高时间效率(降低时间复杂度)
转载于:https://www.cnblogs.com/liushiqiang123/p/8349786.html
08返回一个整数数组中最大子数组的和相关推荐
- 软工 课堂作业:选出一个整数组中最大子数组
项目计划日志 10.6 看ppt,熟悉内容. 10.6下午,开始编程调试. 10.7 运行调试,写博客. 时间记录日志 日期 开 ...
- 结对开发——返回一个整数数组中最大子数组的和 (首尾相接版)
一.题目及题目要求 题目:返回一个整数数组中最大子数组的和. 要求: (1)输入一个整形数组,数组里有正数也有负数. (2)数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. (3)如果 ...
- 返回一个首尾相接的二维整数数组中最大子数组的和
题目: ·返回一个二维整数数组中最大子数组的和. 要求: ·输入一个二维整形数组,数组里有正数也有负数. ·二维数组首尾相接,象个一条首尾相接带子一样. ·数组中连续的一个或多个整数组成一个子数组,每 ...
- 返回一个二维整数数组中最大子数组的和(二人结对)
题目:返回一个二维整数数组中最大子数组的和 要求:1.输入一个二维整型数组,数组里有正数也有负数. 2.二维数组中连续的一个子矩阵组成一个子数组,每个子数组都有一个和. 3.求所有子数组的和的最大值. ...
- 返回一个整数数组中最大子数组的和---环形数组
一.题目要求 题目:返回一个整数数组中最大子数组的和. 要求: 输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 如果数组A[0]--A[j- ...
- 软件工程结对开发——返回一个整数数组中最大子数组的和(JAVA)
题目:返回一个整数数组中最大子数组的和. 要求: 输入一个整型数组,数组里有正数也有负数: 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和: 求所有子数组的和的最大值.要求时间复杂度为 ...
- 返回一个整数数组中最大子数组的和。
一.要求: (1)输入一个整形数组,数组里有正数也有负数. (2)数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. (3)如果数组A[0]--A[j-1]首尾相邻,允许A[i-1],. ...
- 课堂练习:返回一个二维数组中最大子数组的和
1.题目: 返回一个二维数组中最大子数组的和. 2.要求: 输入一个二维整形数组,数组里有正数也有负数. 二维数组首尾相接,象个一条首尾相接带子一样. 数组中连续的一个或多个整数组成一个子数组,每个子 ...
- 返回一个循环数组中最大子数组的和
设计思路 首先利用rand()函数随机产生一个一维数组,数组长度通过宏定义来控制.求首尾连接的一维数组的最大子数组的和我的思路是:循环N次(N是数组的长度)依次检测数组的最大子数组的和再比较大小,保留 ...
- 求二维整数数组中最大子数组的和(结对作业)
题目:返回一个二维整数数组中最大子数组的和 要求:(1)输入一个二维整形数组,数组里有正数也有负数. (2)二维数组中连续的一个子矩阵组成一个子数组,每个子数组都有一个和. (3)求所有子数组的和最大 ...
最新文章
- PHP的优点和缺点分别是什么,CSS的优点和缺点分别是什么
- centos 7 文档服务器,centos 7 web服务器
- [WinApi]邮槽通信C/S实例
- C和指针之预处理器之普通c/c++文件的编译过程
- windows安装TortoiseGit
- 节点主动可信监控机制
- 奔跑吧,骏马!——跑步类动画设计动态分析
- 华为matepadpro可以用云电脑吗_放弃台式机,改用华为云电脑,再手机投屏到显示器,这样可行吗?...
- 华中科技大学计算机作业试题,华中科技大学2009大学计算机基础考试试题A
- arcgis语言如何中文改英文_值得收藏|不重装软件实现ArcGIS中英文版本之间切换...
- Java 面试真题 【继承静态代码块执行时机】
- pos方式下载文件,解决url参数过长问题
- 全面解析Linux 内核 3.10.x - Device Tree 详解
- Chrome 浏览器翻译停服!改Hosts也失效!还有这些解决方案
- halcon一维码识别
- Hadoop下载地址大全
- Android应用常用的加密方式
- 2019年云架构和云计算趋势如何?|中机智库干货
- Win8的Metro界面
- 8-14。个人发牢骚记录
热门文章
- 个人空间html5主页面,2.HTML 教程- (HTML5 简介)
- 时分多路复用(Time Division Multiplexing,TDM)
- linux jenkins自动部署,【linux】【jenkins】自动化部署一 安装jenkins
- Hbase Region拆分入门
- node + express + sockio 在线聊天室
- Hadoop基础教程》之初识Hadoop【转】
- [ 1003 ] 判断小偷那些事
- 第三个Sprint冲刺第十天
- 铵钮提交事件PostBack之后,一些动态加载的物件丢失
- contentType,charset和pageEncoding的区别