代码随想录算法训练营DAY27第八章 贪心算法 part01

目录

[455. 分发饼干](#455. 分发饼干)

[376. 摆动序列](#376. 摆动序列)

[53. 最大子数组和](#53. 最大子数组和)


455. 分发饼干

cpp 复制代码
class Solution {
public:
    int findContentChildren(vector<int>& g, vector<int>& s) {
        int ans=0;
        sort(g.begin(),g.end());
        sort(s.begin(),s.end());
        int p=s.size()-1;
        int k=g.size()-1;
        while(p>=0&&k>=0){
            if(g[k]<=s[p]){
                k--;
                p--;
                ans++;
            }
            else k--;
        }
        return ans;
    }
};

376. 摆动序列

这道题解释得很勉强,感觉不太适合用贪心做

cpp 复制代码
class Solution {
public:
    int wiggleMaxLength(vector<int>& nums) {
        if(nums.size()==1)return 1;
        int ans=1;
        int prediff=0;
        int curdiff=0;
        for(int i=0;i<nums.size()-1;i++){
            curdiff=nums[i+1]-nums[i];
            if(prediff>=0&&curdiff<0||prediff<=0&&curdiff>0){
                ans++;
                prediff=curdiff;
            }
        }
        return ans;
    }
};

53. 最大子数组和

cpp 复制代码
class Solution {
public:
    int maxSubArray(vector<int>& nums) {
        int ans=INT_MIN;
        int sum=0;
        for(int t:nums){
            sum+=t;
            ans=max(ans,sum);
            if(sum<0)sum=0;
        }
        return ans;
    }
};
相关推荐
灰灰勇闯IT几秒前
ops-reduce:ReduceMax 与 ReduceMean 的并行优化
算法
水木流年追梦10 分钟前
大模型入门-Reward 奖励模型训练
开发语言·python·算法·leetcode·正则表达式
沙威玛_LHE19 分钟前
P13376题解
算法
DFT计算杂谈41 分钟前
KPROJ编译教程
java·前端·python·算法·conda
重生之我是Java开发战士1 小时前
【笔试强训】Week5:空调遥控, kotor和气球,走迷宫,主持人调度II,体操队形,二叉树的最大路径和,排序子序列,消减整数
java·算法·动态规划
吃好睡好便好2 小时前
用if…end…语句计算分段函数
开发语言·人工智能·学习·算法·matlab
灰灰勇闯IT2 小时前
ops-memory:CANN Runtime 的 Tensor 内存管理
算法
叶子Talk2 小时前
OpenAI破解80年数学猜想,AI首次做出原创证明
人工智能·数学·算法·机器学习·ai·openai·ai推理
MhZhou04123 小时前
1.11M参数小模型实现脑瘤分割 CVPR 2026 Findings 开源
算法·计算机视觉·3d·空间计算
有为少年3 小时前
Welford算法 | 从单一到批次
大数据·人工智能·深度学习·神经网络·算法·机器学习