zoukankan      html  css  js  c++  java
  • 一个数组中最大子数组的和并且加上测试用例

    数组代码:
    public class Maxsum {
    public int Max(int Array[],int size){
    int max=Array[0];
    int num;
    int sum=max;
    for(num=1;num<size;num++)
    {
    if(sum<0)
    sum=Array[num];
    else
    sum+=Array[num];
    if(sum>max)
    max=sum;
    }
    return max;
    }
    public static void main(String[] args){
    Maxsum sum=new Maxsum();
    Scanner in=new Scanner(System.in);
    int size=in.nextInt();
    int []Array=new int[size];
    int num;
    for(num=0;num<size;num++)
    Array[num]=in.nextInt();
    System.out.println(sum.Max(Array,size));
    in.close();
    }
    }



    测试用例代码:

    public class MaxsumTest {
        Maxsum sum=new Maxsum();
    @Before
    public void setUp() throws Exception {

    }

    @After
    public void tearDown() throws Exception {

    }
    @Test
    public void testMax1() {
    int []Array=new int[]{1,-2,4,-1,-5};
    assertEquals(4, sum.Max(Array,5));
    }
    @Test
    public void testMax2() {
    int []Array=new int[]{1,-2,-4,1,5};
    assertEquals(6, sum.Max(Array,5));
    }
    @Test
    public void testMax3() {
    int []Array=new int[]{1,2,3,1,1};
    assertEquals(8, sum.Max(Array,5));
    }
    @Test
    public void testMax4() {
    int []Array=new int[]{-1,-2,-4,-1,-5};
    assertEquals(-1, sum.Max(Array,5));
    }
    @Test
    public void testMax5() {
    int []Array=new int[]{0,0,0,0,0};
    assertEquals(0, sum.Max(Array,5));
    }
    }

    测试用例:

    代码截图:

    运行截图:

     
  • 相关阅读:
    Python基础之流程控制
    Python基础之深拷贝与浅拷贝
    常见开源告警系统对比分析(prometheus、open-falcon、zabbix)
    prometheus简介
    谈谈业务系统的监控报警
    UML类图与类的关系
    IntelliJ IDEA反向生成UML类图
    UML类图几种关系的总结
    UML类图详解和示例
    leetcode-----43. 字符串相乘
  • 原文地址:https://www.cnblogs.com/xubaby0912/p/6542826.html
Copyright © 2011-2022 走看看