Maximum Subarray

来源:互联网 发布:理财网站源码 编辑:程序博客网 时间:2024/05/16 02:49

1.题目

在数组中找连续的数,使其和最大

2.算法

这是一个动态规划的题目,我们维护两个变量,一个为局部最优,一个全局最优

local = Math.max(local + a[i], local);

global = Math.max(global, local);

public int maxSubArray(int[] a) {if (a == null || a.length == 0){return 0;}int global = a[0];int local = a[0];for (int i = 1; i < a.length; i++){local = Math.max(local + a[i], local);global = Math.max(global, local);}return global;}


0 0