代码:

package test;//求最大子数组

import java.util.Scanner;

import javax.swing.JOptionPane;

public class shuzu {
public static void main(String []args)
{
Scanner s=new Scanner(System.in);
String str1=JOptionPane.showInputDialog(null,"请输入数组数目:");
int sum=Integer.parseInt(str1);
int []a=new int[sum];
JOptionPane.showMessageDialog(null,"请输入"+sum+"个数");
for(int i=0;i<sum;i++)
{
String str2=JOptionPane.showInputDialog(null,"请输入第"+(i+1)+"个数:");
a[i]=Integer.parseInt(str2);;
}
s.close();
int sum1=0;
for(int i=1;i<=sum;i++)
{
sum1=sum1+i;
}
int [] b=new int[sum1];
int temp1=0;
int max=a[0];
int temp3=0;
int temp4=0;
for(int i=0;i<sum;i++)
{
int temp=0;
for(int k=0;k<sum-i;k++)
{
temp=temp+a[i+k];
b[temp1]=temp;
if(max<b[temp1])
{ temp3=i;
temp4=k+1;
max=b[temp1];
}
if(temp1==0)
System.out.println("第一次:a[0]为最大子数组是"+a[0]);
else{
if(max==b[temp1])
System.out.println("第"+(temp1+1)+"次:a["+temp3+"]到a["+(temp3+temp4-2)+"]与a["+i+"]到a["+(i+k)+"]比较,a["+i+"]到a["+(i+k)+"]的和最大为:"+temp);
else
System.out.println("第"+(temp1+1)+"次:a["+i+"]到a["+(i+k)+"]与a["+temp3+"]到a["+(temp3+temp4-1)+"]比较,a["+temp3+"]到a["+(temp3+temp4-1)+"]的和最大为:"+max);
}
temp1++;
}
}
System.out.println("所有子数组和数组如下:");
for(int i=0;i<sum1-1;i++)
{
System.out.print(b[i]+" ");
}
System.out.println("");
System.out.println("冒泡排序如下");
int temp=1;
for(int i=0;i<sum1-1;i++)
{
System.out.print("第"+temp+"次排序:");
for(int k=0;k<sum1-1-i;k++)
{
if(b[k]<b[k+1])
{
int temp2=b[k];
b[k]=b[k+1];
b[k+1]=temp2;
}
}
for(int j=0;j<sum1-1;j++)
{
System.out.print(b[j]+" ");
}
System.out.println("");
temp++;
}
JOptionPane.showMessageDialog(null,"最大的子数组和为"+b[0]);
}
}

JAVA课堂测试之一位数组可视化的更多相关文章

  1. java课堂测试2(两种方式)

    实验源代码 这是不使用数组形式的源代码 /* 2017/10/10 王翌淞 课堂测试2 */import java.util.Scanner; public class Number { public ...

  2. Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流

    #Java基础测试 涉及知识点:数组,面向对象,重载,重写,继承,集合,排序,线程,文件流 一.多项选择题(可能是单选,也可能是多选) 1.下列标识符命名不合法的是(   D  ). A.$_Name ...

  3. Java课堂测试--实现ATM的基本操作体会

    9月20的周四的Java课堂第一节课上就是有关于实现ATM的考试内容,在实现的过程中我了解到自己本身还是有很多的不足之处,例如在实现工程方面的相似性上面还有些许就的欠缺,再者就是回宿舍拿电源的原因导致 ...

  4. Java课堂测试——一维数组

    题目: 一个典型的流程是: 2. 用户这时候有两个选择2.1  按 单步执行 键, 在 GUI 看到你的程序是如何一步一步算出目前最大子数组的范围,当前计算到的临时子数组是在哪里,等等. 最好用不同的 ...

  5. java课堂测试

       package 作业2; //信1805-1 杨一帆 20183608 public class ScoreInformation1 { private String stunumber; pr ...

  6. Java课堂测试01及感想

    上周进行了Java的开学第一次测验,按要求做一个模拟ATM机功能的程序,实现存取款.转账汇款.修改密码.查询余额的操作.这次测验和假期的试题最大的不同还是把数组存储改成的文件存储,在听到老师说要用文件 ...

  7. java课堂测试2

    //信1605-2 20163428 刘宏琦import java.util.*;public class Number { /** * @param args */ public void pand ...

  8. 每日总结:Java课堂测试第三阶段第二次优化 (四则运算) (2021.9.22)

    package jisuan2; import java.util.*;import java.util.Scanner; public class xiaoxue { public static v ...

  9. 每日总结:Java课堂测试第三阶段第一次优化 (2021.9.20)

    package jisuan2; import java.util.*;public class xiaoxue { public static void main(String[] args) { ...

随机推荐

  1. JavaScript定义函数

    函数声明 一个函数定义(也称为函数声明,或函数语句)由一系列的function关键字组成,依次为: 1函数的名称. 2函数参数列表,包围在括号中并由逗号分隔. 3定义函数的 JavaScript 语句 ...

  2. HTML5_canvas 画布

    <canvas></canvas> 画布 <canvas id="my_canvas" width="400" height=&q ...

  3. [LeetCode] Minimize Max Distance to Gas Station 最小化去加油站的最大距离

    On a horizontal number line, we have gas stations at positions stations[0], stations[1], ..., statio ...

  4. Java课程课后作业之19学期之第一周博客作业

    作为一个大二的学生,自己已经不小了,没有大一那个时候的无忧无虑的可以放纵的时光,只剩下一年,我就该做出我人生的下一个重大决定了,这一次真的是我一个人的决定,从小到大,父母为我做过很多的决定,即使在小的 ...

  5. shell - shift

    Shell编程中Shift的用法 位置参数可以用shift命令左移.比如 shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1.$2.$3丢弃,$0不移动.不带参数的shi ...

  6. 华大单片机开发板HC32L13X上手入门

    HC32L136开发板(如下图所示)分为板载调试模块(左半部分)和MCU开发电路(右半部分).二者中间通过邮票孔相连,如果将板子从中间掰开,板载调试模块就可以当一个CMSIS-DAP的仿真器来使用.此 ...

  7. Swift之Swift编码规范

    swift 支持的 markdown 语法. 1. 编码格式 1.1 使用二元运算符(+, -,==, 或->)的前后都需要添加空格 let value = + 1.2 在逗号后面加一个空格 l ...

  8. 编写一篇博文介绍COOKIE和Session的原理及异同

    一.什么是cookie 1.概念 Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持. Cookie 是在 HT ...

  9. git 和github使用

    强制推送覆盖到远程仓库!!

  10. Springboot-001-解决nested exception is org.apache.ibatis.binding.BindingException: Parameter 'env' not found. Available parameters are [arg1, arg0, param1, param2]

    环境:Springboot + Mybatis + MySQL + VUE 场景: 前端发出数据比对请求,在服务后台与数据库交互时,接口提示错误信息如下所示: { "code": ...