• 一个整数数组中最大字数租的和


    设计思想:先让用户输入数组,再对数组进行计算。创建一个变量保存最大值,从第一个数往后一次相加,创建变量保存这个和,每次都与最大值进行比较,若和大,则赋值给最大值,若和小,再进行判断,和是否小于0,若小于0,则将和重新赋值为0,从后一位开始计算。

    源代码:

    package 数组1;
    import java.util.*;
    public class Shuzu1 {
        public static void main(String[] args){
            Scanner scan=new Scanner(System.in);
            System.out.println("请输入数组的元素个数");
            int n=scan.nextInt();
            int[] shuzu=new int[n];
            shuzu=fuzhi(n);
            int jieguo=max(shuzu);
            System.out.println("子数组和的最大值为:"+jieguo);
        }
        
        public static int[] fuzhi(int n){//数组赋值
            int[] shuzu=new int[n];
            Scanner s=new Scanner(System.in);
            for(int x=1;x<=n;){
            System.out.println("请输入数组的第"+x+"个元素:");
            shuzu[x-1]=s.nextInt();
            x++;
            }
            return shuzu;
        }
        
        public static int max(int[] shuzu){//求最大值
             int max=0;
             int l=0;
             for(int i=0;i<shuzu.length;i++)
             {
                 l = l + shuzu[i];
                 if(l< 0)
                      l = 0;
                 else
                 {
                     if(l > max)
                         max = l;
                 }
             }
             return max;
        }
        
    }

    运行结果截图:

    总结:该算法并不难,主要在于自己要理清思路。

  • 相关阅读:
    Java集合
    java多线程
    IO学习笔记
    在阿里云服务器上部署项目失败的原因
    购买阿里云服务器学生机
    使用gitee创建个人的图床
    idea中springboot热部署(无需重启项目)
    Springboot实现验证码登录
    getAddress和getHostAddress的区别
    泛型学习第一天:List与IList的区别 (三)
  • 原文地址:https://www.cnblogs.com/liulitianxia/p/6669686.html
Copyright © 2020-2023  润新知