码迷,mamicode.com
首页 > 编程语言 > 详细

求子数组最大值

时间:2016-04-08 20:07:55      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

设计思路:用户输入一个数组本次规定为4个数的数组,可根据需要进行修改,关于如何求出子数组中和的最大值:应该先明确最大值的来源数组一定包括原来数组中的最大值,因此找到这个最大值并记录下标,定义两个和的变量temp和temp1,从最大值下标开始逐一求和比较最终得到子数组最大的和。

源代码:

package arrsum;
import java.util.Scanner;

public class Sum {

    public static void main(String[] args) {
        int arr[]= new int[10];
        int i,sum=arr[0];
        int temp=arr[0];
        int temp2=arr[0];
        int max=arr[0],max1=arr[0];
        int max2=arr[0];
        int n;
        Scanner sc=new Scanner(System.in);
            System.out.println("请输入一个4个数的数组");
         for(i=0;i<4;i++)
         {
             arr[i]=sc.nextInt();
         }
           for(i=0;i<4;i++) 
            {     
                if(arr[i]<arr[i+1])
                    max2=arr[i+1];
                      n=i+1;     
                          temp+=arr[n];                            
                             temp2+=arr[n+1];
                      
                    if(temp>temp2)
                        max=temp;
                    else
                        max1=temp2;
            } 
            
           if(max>max1) 
                 sum=max;
              else
                     sum=max1;
            
            System.out.println(sum);
        }

         
    }
结果截图:技术分享
总结:解决问题的关键在于找出问题的关键所在,因此在以后的编程过程中我应当多加注意充分的思考。

 

求子数组最大值

标签:

原文地址:http://www.cnblogs.com/wanghao369/p/5369688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!