力扣每日一题 合并后数组中的最大元素 贪心

Problem: 2789. 合并后数组中的最大元素

思路

贪心:从右向左合并,尽可能的多合并,直到不能合并,更新答案,找前一阶段的最大合并值

复杂度

时间复杂度: O ( n ) O(n) O(n)

空间复杂度: O ( 1 ) O(1) O(1)

Code

Java 复制代码
class Solution {
    public long maxArrayValue(int[] nums) {
        int n = nums.length;
        long t = nums[n-1],ans = 0;
        for(int i = n-1; i > 0; i--)
        {
            if(t >= nums[i-1])
                t += nums[i-1];
            else
            {
                t = nums[i-1];
                ans = Math.max(ans,t);
            }
        }
        ans = Math.max(ans,t);
        return ans;
    }
}
相关推荐
有意义15 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
xlp666hub16 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
用户7268761033716 小时前
解放双手的健身助手:基于 Rokid AR 眼镜的运动计时应用
算法
Wect16 小时前
LeetCode 17. 电话号码的字母组合:回溯算法入门实战
前端·算法·typescript
xlp666hub1 天前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
程序员小崔日记2 天前
大三备战考研 + 找实习:我整理了 20 道必会的时间复杂度题(建议收藏)
算法·408·计算机考研
lizhongxuan2 天前
AI小镇 - 涌现
算法·架构
AI工程架构师2 天前
通常说算力是多少 FLOPS,怎么理解,GPU和CPU为什么差异这么大
算法
祈安_2 天前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法