zoukankan      html  css  js  c++  java
  • 课堂练习

    思路:

             求循环数组的最大子数组,相当于将数组重复两遍,然后再求出这个重复两遍的数组求出它的最大子数组即可。这个题目的实质是弄清楚循环数组求最大子数组即是讲所有数组重复一遍然后再用一般的方法求最大子数组。

    具体代码:

    package example1;
    
    import java.util.Scanner;
    public class example1 {
        public static void main(String args[]){
            int num;
            Scanner in = new Scanner(System.in);
            System.out.println("输入数组中元素的个数:");
            num = in.nextInt();
            int []a = new int[num]; //定义数组a
            for(int i = 0;i < num;i ++)
            {
                a[i] = (int)(Math.random()*30 - 10); //产生的随机数范围在-10 - 10
            }
            System.out.println("产生的数组元素的值为:");  
            for(int i = 0;i < num;i ++){
                System.out.print(a[i] + " ");
            }
            System.out.print("
    ");
            int []b = new int[a.length*2];  //定义一个数组b,b中的元素为a中元素重复两次
            System.out.println("生成的环形数组为:");
            for(int i = 0;i < b.length;i ++){
                b[i] = a[i % a.length];
                System.out.print(b[i] + " ");
            }
            System.out.print("
    ");
             
            int sum = b[0],temp = b[0];//将数组最大值初始为b数组中第一个元素
            int s = 0;
            int i = 1;
            while(i < b.length / 2 + s)
            { 
                temp = temp + b[i];
                if(temp < b[i])
                {
                    temp = b[i];
                    s = i;
                }
                if(temp > sum)
                {
                    sum = temp;
                }
                i ++;
            }
            System.out.println("最大的子数组为:" + sum);
        }  
    }

    运行截图:

                                                                        

  • 相关阅读:
    uoj388 【UNR #3】配对树
    uoj386 【UNR #3】鸽子固定器
    回忆录
    xcode 把项目代码提交到远程SVN服务器
    IOS 点击按钮拨号
    ADO与达梦7产生的一个未知问题
    DSN 建立达梦7(DM)连接
    iOS UIControl 事件的说明(转)
    IOS开发copy,nonatomic, retain,weak,strong用法
    QT Creator 使用SVN的版本号做为编译的版本信息
  • 原文地址:https://www.cnblogs.com/overs/p/6652992.html
Copyright © 2011-2022 走看看