zoukankan      html  css  js  c++  java
  • LeetCode-Maximum Subarray

    Find the contiguous subarray within an array (containing at least one number) which has the largest sum.

    For example, given the array [−2,1,−3,4,−1,2,1,−5,4],
    the contiguous subarray [4,−1,2,1] has the largest sum = 6.

    click to show more practice.

    More practice:

    If you have figured out the O(n) solution, try coding another solution using the divide and conquer approach, which is more subtle.

    class Solution {
    public:
        int maxSubArray(int A[], int n) {
            // Note: The Solution object is instantiated only once and is reused by each test case.
            if(n==0)return 0;
            int current=A[0];
            int max=current;
            for(int i=1;i<n;i++){
                if(current>max)max=current;
                if(current<0){
                    current=A[i];
                }
                else{
                    current+=A[i];
                }
            }
            if(current>max)max=current;
            return max;
        }
    };
    View Code
  • 相关阅读:
    SQL FORMAT() 函数
    SQL ROUND() 函数
    SQL NOW() 函数
    SQL LEN() 函数
    SQL LCASE() 函数
    SQL MID() 函数
    SQL HAVING 子句
    UCASE() 函数
    SQL GROUP BY 语句
    SQL MAX() 函数
  • 原文地址:https://www.cnblogs.com/superzrx/p/3351167.html
Copyright © 2011-2022 走看看