首页 > 编程语言 >贪心算法_Leetcode刷题_7/100

贪心算法_Leetcode刷题_7/100

时间:2022-11-09 11:58:12浏览次数:71  
标签:遍历 代码 算法 区间 100 刷题 糖果 Leetcode 贪心

贪心算法

采用贪心策略,保证每次操作是局部最优的,从而使随后结果是全局最优的。

455.分配饼干

  • 贪心策略:尽量把最小的饼干分配给胃口最小的孩子。
  • 我的代码:
  • 算法描述:
  1. 将孩子的胃口值g和拥有的饼干s进行升序排列;
  2. 使用双指针对胃口和饼干进行遍历,在胃口和饼干都被遍历完之前(分配完成),为每个胃口匹配能完成它的最小饼干,满足胃口即计数+1,直到退出循环。

135.分糖果

  • 贪心策略:在每次遍历中,只考虑并更新一侧的大小关系。
  • 官方代码:
  • 我的代码:
  • 算法描述【我的代码】:
  1. 将所有孩子的的糖果数初始化为1;
  2. 先从左往右遍历一遍,如果右边孩子的评分比左边孩子高,则右边孩子的糖果数更新为左边孩子的糖果数+1;
  3. 再从右往左遍历,如果左边的孩子评分比右边高且左边孩子的糖果数小于等于右边孩子的糖果数,则左边孩子的糖果数更新为右边孩子的糖果数+1.

435.区间问题

  • 贪心策略:优先保留结尾小且不相交的区间。
  • 官方代码:
  • 算法描述:
  1. 先确定首个区间,应该满足右端点最小;将所有区间按照右端点从小到大进行排序;
  2. 下一个区间应该满足于首个区间不重合且右端点最小的区间;
  3. 依次排列,形成最终最优的不重叠区间结果。

Arrays.sort用法

https://blog.csdn.net/ssjdoudou/article/details/107886461?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-1-107886461-blog-109584146.pc_relevant_3mothn_strategy_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-1-107886461-blog-109584146.pc_relevant_3mothn_strategy_recovery&utm_relevant_index=2

452.用最少数量的箭引爆气球

  • 我的代码:

  • 算法思路:这个题与435.区间问题本质上是同一个问题,将所有气球的区间排列成为最少的不重复区间,包括端点不重复,这样用的箭的数量其实是满足了所有气球都能被引爆的最小值。

605.种花问题

  • 我的代码
  • 算法描述:判断一个位置是否能够种花,只需要判断这个位置的左右两边是否有位置;对于最开始和最后的位置,只需要判断位置的右边或者左边是否有空位;为了将这些情况归一化处理,在最开始和最后的位置上各加1个0,再按照普遍情况进行遍历即可。

763.划分字母区间

  • 官方代码:

    对字符串还不太了解,暂时放弃;
  • 算法描述:

122.买卖股票的最佳时间

  • 我的代码:
  • 算法描述:把一段时间的购入卖出理解为每天都在购入卖出,如果这一天可以获利,就执行购入并卖出;如果这一天不能获利就不购入,自然也无需卖出;实际不是这样操作的,但是可以用这种思想解决问题。

标签:遍历,代码,算法,区间,100,刷题,糖果,Leetcode,贪心
From: https://www.cnblogs.com/yeyutian/p/16846820.html

相关文章

  • 611009 CAD 复制镜像偏移阵列
    本节课讲解9CAD复制镜像偏移阵列。1.修改工具在右侧,第一个按钮为删除,快捷键为【E】或【delete】。2.【CO】复制,选择要复制的图形,输入命令找到基点进行移动。3.可以......
  • 611007 CAD 图案填充面域表格文字
    本节课讲解7CAD图案填充面域表格文字。1.图案填充快捷键为【H】,下面为【渐变色填充】,操作方式是一样的。2.创建矩形,输入【H】,进行对象的选择,面域快捷键【REG】。3.......
  • 611005 CAD 多边形矩形圆弧圆
    本节课讲解5CAD多边形矩形圆弧圆。1.多边形快捷键【POL】,输入侧面数,可以选择【内切】或【外接】。2.内切的图形在圆形内,外接的图形在圆形外面,参数一样的情况下,图形大......
  • leetcode35
    搜索插入位置Category Difficulty Likes Dislikesalgorithms Easy(45.79%) 1329 -TagsCompanies给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果......
  • 611004 CAD 直线构造线多段线
    本节课讲解4CAD直线构造线多段线。1.左侧工具栏第一个为直线命令,快捷键【L】,根据命令栏提示进行绘图。2.绘制直线,输入长度,要转换为毫米,点击【空格】。3.【DI】可以......
  • 611003 CAD CAD基础操作
    本节课讲解3CAD基础操作。1.点击上面的小三角,选择【显示菜单栏】,将现有的工具命令栏进行删除。2.在工具栏空白处右键,选择【关闭】,将操作空间变大。3.【工具】-【工......
  • 611002 CAD 选项设置草图设置
    本节课讲解2CAD选项设置草图设置。1.选项设置快捷键【OP】,在英文输入法的状态下,点击【空格】会跳出对话框。2.【文件】中有【自动保存文件位置】和【样板设置】,点击加......
  • 611001 CAD 初始重置设置
    本节课讲解1CAD初始重置设置。1.双击打开CAD,打开CAD会出现三个界面,左侧【打开】可以打开文件。2.【新建】是新建空白文档,【最近使用的项目】中会有最近使用的文件,以名......
  • 100mA 意思是 电流强度等于 100 毫安。(1000 毫安 等于 1 安培。)
    100mA意思是电流强度等于100毫安。(1000毫安等于1安培。) 100mA意思是电流强度等于100毫安。(1000毫安等于1安培。)//bMaxPower字段,该设备需要的最大电流......
  • LeetCode刷题记录.Day9
    快乐数题目链接202.快乐数-力扣(LeetCode)classSolution{public:intgetSum(intn){intsum=0;while(n){sum+=(n%10)*......