代码随想录算法训练营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;
    }
};
相关推荐
人工智能AI酱25 分钟前
【AI深究】逻辑回归(Logistic Regression)全网最详细全流程详解与案例(附大量Python代码演示)| 数学原理、案例流程、代码演示及结果解读 | 决策边界、正则化、优缺点及工程建议
人工智能·python·算法·机器学习·ai·逻辑回归·正则化
WangLanguager27 分钟前
逻辑回归(Logistic Regression)的详细介绍及Python代码示例
python·算法·逻辑回归
m0_5180194829 分钟前
C++与机器学习框架
开发语言·c++·算法
一段佳话^cyx34 分钟前
详解逻辑回归(Logistic Regression):原理、推导、实现与实战
大数据·算法·机器学习·逻辑回归
qq_4176950535 分钟前
C++中的代理模式高级应用
开发语言·c++·算法
xiaoye-duck1 小时前
《算法题讲解指南:动态规划算法--路径问题》--5.不同路径,6.不同路径II
c++·算法·动态规划
ambition202421 小时前
最大子数组和算法全解析:从暴力枚举到动态规划优化
数据结构·c++·算法
没头脑的男大1 小时前
关于删除列表的那些事儿
算法
Book思议-2 小时前
【数据结构实战】线性表的应用
c语言·数据结构·算法·链表
qq_461489332 小时前
C++与Qt图形开发
开发语言·c++·算法