• 第五周课堂测试


    设计思想:

    1、通过调用输入函数进行数组的录入;

    2、利用课堂老师讲的动态规划对数组中的子数组进行求最大值操作;

    *3、添加一个max0对曾经的最大值进行储存,避免出现最大值出现数组中间而导致的错过问题;

    出现的问题:

    好久不用eclipse了,很多基本的操作还需要重新温习才可以;

    数字的输入代码通过上网查询才敲好;

    可能的解决方案:

    目前想不到在时间复杂度允许的范围内的其他的方法;

    源代码:

    package max;
    import java.util.*;
    public class Array_max {
        public static int Cin(int i){
            Scanner in=new Scanner(System.in);
            System.out.println("请输入第"+(i+1)+"个数");
            int b=in.nextInt();
            return b;
        }
        public static int Get(int len[],int num){
            int max = len[0];
            int max0=0;
            for(int i=1;i<num;i++){
                if(len[i]>0){
                    max=max+len[i];
                }
                else{
                    if(max>max0){
                        max0=max;
                    }
                    max=0;
                }
            }
            return max0;
        }
        public static void main(String args[]){
            Scanner in=new Scanner(System.in);
            System.out.println("请输入数组数字个数:");
            int num=in.nextInt();
            int len[]=new int[num];
            for(int i=0;i<num;i++){
                len[i]=Cin(i);
            }
            int max=Get(len,num);
            System.out.print("子数组和的最大值为:"+max);
        }
    }

    结果截图:

    总结:其实代码很简单,关键是思想很难想到,如果没有上课老师提点,估计只是想思路就要耗费大量时间!

  • 相关阅读:
    132123
    (一)robotframework自动化环境搭建
    python读取xlsx、csv、txt、html文件
    (二)robotframework自动化中遇到的错误及解决思路
    python使用小技巧
    三生零基础大白菜自动重装系统教程
    安装JDK和配置环境变量
    webpack 一套工程代码 管理多个相似项目
    box2dWeb 学习笔记
    简单计时器
  • 原文地址:https://www.cnblogs.com/dawn-sky/p/5368998.html
Copyright © 2020-2023  润新知