JAVA课堂测试之一位数组可视化
代码:
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课堂测试之一位数组可视化的更多相关文章
- java课堂测试2(两种方式)
实验源代码 这是不使用数组形式的源代码 /* 2017/10/10 王翌淞 课堂测试2 */import java.util.Scanner; public class Number { public ...
- Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流
#Java基础测试 涉及知识点:数组,面向对象,重载,重写,继承,集合,排序,线程,文件流 一.多项选择题(可能是单选,也可能是多选) 1.下列标识符命名不合法的是( D ). A.$_Name ...
- Java课堂测试--实现ATM的基本操作体会
9月20的周四的Java课堂第一节课上就是有关于实现ATM的考试内容,在实现的过程中我了解到自己本身还是有很多的不足之处,例如在实现工程方面的相似性上面还有些许就的欠缺,再者就是回宿舍拿电源的原因导致 ...
- Java课堂测试——一维数组
题目: 一个典型的流程是: 2. 用户这时候有两个选择2.1 按 单步执行 键, 在 GUI 看到你的程序是如何一步一步算出目前最大子数组的范围,当前计算到的临时子数组是在哪里,等等. 最好用不同的 ...
- java课堂测试
package 作业2; //信1805-1 杨一帆 20183608 public class ScoreInformation1 { private String stunumber; pr ...
- Java课堂测试01及感想
上周进行了Java的开学第一次测验,按要求做一个模拟ATM机功能的程序,实现存取款.转账汇款.修改密码.查询余额的操作.这次测验和假期的试题最大的不同还是把数组存储改成的文件存储,在听到老师说要用文件 ...
- java课堂测试2
//信1605-2 20163428 刘宏琦import java.util.*;public class Number { /** * @param args */ public void pand ...
- 每日总结:Java课堂测试第三阶段第二次优化 (四则运算) (2021.9.22)
package jisuan2; import java.util.*;import java.util.Scanner; public class xiaoxue { public static v ...
- 每日总结:Java课堂测试第三阶段第一次优化 (2021.9.20)
package jisuan2; import java.util.*;public class xiaoxue { public static void main(String[] args) { ...
随机推荐
- IDEA_教你十分钟下载并破解IntelliJ IDEA(2017)(转)
之前都是用myeclipse,但是最近发现看的很多教学视频都是使用 IntelliJ IDEA,于是决定换个软件开始新的学习征程! 下面讲讲我是如何在十分钟之内安装并破解该软件. 1.首先,我找到了 ...
- 100837D
囤了一个星期..今天看了下vj上 sysuteam7 三年半之前的代码.. 深刻地认识到了自己智商不足的问题. 先求出来每个点对中心的偏移量.确实是乱序的,但是我们可以极角排序,这样一定是一个循环移位 ...
- python学习-01
1.编程语言分类: 编译型:(由编译器将代码编译成计算机识别的二进制文件)C \C++ \C# 运行速度较解释型语言快 解释型:(在运行时进行编译)python.php.sheel.ruby.j ...
- jenkins测试配置
- Python全栈-magedu-2018-笔记3
第三章 - Python 内置数据结构 分类 数值型 int.float.complex.bool 序列对象 字符串 str 列表 list tuple 键值对 集合set 字典dict 数值型 数值 ...
- Spring Security Session并发控制原理解析
当使用spring security 的标签,如下,其中<sec:session-management>对应的SessionManagementFilter.从名字可以看出,这是一个管理S ...
- mysql-cluster集群配置
环境: centos7:192.168.1.16,192.168.1.170 mysql-cluster-community-7.6.8-1.el7.x86_64.rpm-bundle.tar 安装: ...
- 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...
- shell 字符串比较 算数比较 文件条件测试
set-group-id即set-gid -->授予了程序其所在组的访问权限 set-user-id即set-uid -->授予了程序其拥有者的访问权限而不是其使用者的访问权限 set-g ...
- mysql自动更新时间
ALTER TABLE sys_user MODIFY COLUMN update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDAT ...