当前位置: 首页 > news >正文

小山菌_代码随想录算法训练营第二十九天| 455. 分发饼干 、376. 摆动序列、53. 最大子序和

455. 分发饼干

文档讲解:代码随想录.分发饼干
视频讲解:贪心算法,你想先喂哪个小孩?| LeetCode:455.分发饼干
状态:已完成

代码实现

class Solution {
public:int findContentChildren(vector<int>& g, vector<int>& s) {// 第一种方法从贪心满足最大值sort(g.begin(), g.end());sort(s.begin(), s.end());int index = s.size() - 1;int result = 0;for (int i = g.size() - 1; i >= 0; i--) { // 遍历学生胃口if (index >= 0 && s[index] >= g[i]) { // 遍历饼干result++;index--;}}return result;// 第二种方法 贪心有限满足最小胃口// sort(g.begin(), g.end());// sort(s.begin(), s.end());// int index = 0;// int result = 0;// for (int i = 0; i < s.size(); i++) { // 遍历饼干//     if (index < g.size() && s[index] >= g[i]) {//遍历学生胃口//         result++;//         index++;//     }// }// return result;}
};

心得体会

  1. 理解了贪心的基本概念,有了初步的理解

376. 摆动序列

文档讲解:代码随想录.摆动序列
视频讲解:贪心算法,寻找摆动有细节!| LeetCode:376.摆动序列
状态:已完成

代码实现

class Solution {
public:int wiggleMaxLength(vector<int>& nums) {if (nums.size() <= 1) {return nums.size();}int cur_diff = 0;int pre_diff = 0;int result = 1;for (int i = 1; i < nums.size(); i++) {cur_diff = nums[i] - nums[i - 1];if (pre_diff <= 0 && cur_diff > 0 ||pre_diff >= 0 && cur_diff < 0) {pre_diff = cur_diff;result++;}}return result;}
};

心得体会

  1. 这题的特殊情况比较多,比较难想到
  2. 采用动态规划的方法后面再实现

53. 最大子序和

文档讲解:代码随想录最大子序和
视频讲解:贪心算法的巧妙需要慢慢体会!LeetCode:53. 最大子序和
状态:已完成

代码实现

class Solution {
public:int maxSubArray(vector<int>& nums) {int result = INT_MIN;int count = 0;for (int i = 0; i < nums.size(); i++) {count = count + nums[i];if (count > result) {result = count;}if (count < 0) {count = 0;}}return result;}
};

心得体会

  1. 贪心确实比暴力方法更精巧
http://www.lryc.cn/news/379469.html

相关文章:

  • 快手可灵大模型开放视频续写功能,可生成最长约3分钟视频
  • 【代码随想录】【算法训练营】【第45天】 [198]打家劫舍 [213]打家劫舍II [337]打家劫舍III
  • python安装目录文件说明----Dlls文件夹
  • java实现持续集成
  • ClickHouse安装与下载22.3.2.2
  • 【Go语言】Gin 框架教程
  • MySQL性能问题诊断方法和常用工具
  • CGFloat转NSString保持原有的精度,末尾不添加0
  • UDS服务——TransferData (0x36)
  • jQuery 基本操作
  • 有玩家在2011年的MacBook上成功运行了Windows XP 还安装了触摸屏
  • 高纯PFA容量瓶PFA试剂瓶在半导体材料的应用
  • AudioSep:从音频中分离出特定声音(人声、笑声、噪音、乐器等)本地一键整合包下载
  • Prompt 提示词工程:翻译提示
  • 【MySQL 的三大日志的作用】
  • 数据库中数据的id生成和算法
  • SystemVerilog Assertion精华知识
  • pdf怎么压缩到2m以内或5m以内的方法
  • Butter Knife 8
  • AMSR/ADEOS-II L1A Raw Observation Counts V003地球表面和大气微波辐射的详细观测数据
  • MySQL之复制(十一)
  • 深入源码设计!Vue3.js核心API——Computed实现原理
  • 驾考小技巧:老北京布鞋!距离高考出分还剩3天,我却看到有些孩子已经拿了“满分”——早读(逆天打工人爬取热门微信文章解读)
  • java-正则表达式 2
  • hadoop常见简单基础面试题
  • 泄漏检测(LDAR)在建档和检测过程中造假套路和不规范行为
  • Android CTS环境搭建
  • 比较Zig、Rust和C++
  • 路由的params参数,命名路由,路由的params参数,命名路由
  • java:CompletableFuture的简单例子