zoukankan      html  css  js  c++  java
  • 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代码split分割数字类
    P1330 封锁阳光大学
    1022 舞会2
    1626 爱在心中
    P2024 食物链(two)
    P1196 银河英雄传说
    P1892 团伙
    P1546 最短网络(最小生成树)
    烦人的幻灯片(拓扑)
    例4.15 奖金(拓扑排序)
  • 原文地址:https://www.cnblogs.com/jccjcc/p/10770669.html
Copyright © 2011-2022 走看看