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) { ...
随机推荐
- 更新node和npm到最新版本
卸载 1.首先卸载nodejs,打开控制面板,然后找到程序卸载: 2.找到npm目录和npmcache 目录,直接删掉(一般情况下会在C:\Users\Caffrey\AppData\Roaming\ ...
- windows 2008下IIS7 安装ASP.NET 遇到500.19
windows 2008下IIS7 安装ASP.NET 遇到如下错误: HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. ...
- GMA Round 1 波动函数
传送门 波动函数 f(x)是一个定义在R上的偶函数,f(x)=f(2-x),当$x\in[-1,1]$时,f(x)=cos(x),则函数$g(x)=f(x)-|cos(\pi x)|$,求g(x)在[ ...
- Centos7 Nagios 搭建
Nagios 是一款自动化运维工具,可以协助运维人员监控服务器的运行状况,并且拥有报警功能.本文章将介绍其安装方法和详细的配置方法. 总结 可以做资源,网络,应用服务的监控 配置上需要配置被监控的,服 ...
- 【搜索1】P1605 迷宫
题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...
- 隐藏状态栏,toolbar前面空格问题,editText圆角
EditText圆角: 一.在drawable下面添加xml文件rounded_editview.xml 复制代码 代码如下: <?xml version="1.0" enc ...
- .NET Core开发日志——GraphQL
GraphQL是什么 GraphQL既是一种用于API的查询语言也是一种通过使用对应数据的类型系统,执行数据查询的服务端运行时.GraphQL没有局限于任何数据库或存储引擎,而是通过既有代码及数据获得 ...
- 使用docker搭建centos虚拟机
网上有很多安装linux的,这里不记录; windows安装docker 转自:https://www.cnblogs.com/samwu/p/10360943.html(windows是家庭版的) ...
- 输入URL地址到页面加载完成 过程
在浏览器的地址栏中输入URL地址"http://www.gacl.cn:8080/JavaWebDemo1/1.jsp"去访问服务器上的1.jsp这个web资源的过程 1.浏览器根 ...
- c# 存储过程取output 值
DataAccess da = new DataAccess(); da.sqlPath = Config.Get("System", "dataCntString&qu ...