码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 学习贪心算法


    一、贪心算法思想

    贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。

    二、什么时候采用贪心算法

    1.最优子结构性质

    当一个问题的最优解一定包含其子问题的最优解时,称此问题具有最优子结构性质。如何理解?换句话说:最优解一定是子问题的最优解组合而成的。没有这条性质,求出的最优解一定不是最优解,所以这才是重中之重。这也是动态规划问题的基石。

    2.贪心选择性质

    贪心选择性质时指所求问题的整体最优解可以通过一系列局部最优的选择获得,即通过一系列的逐步局部最优选择使得问题最终的选择方案是全局最优的。

    三、利用贪心法求解问题的过程通常包含三个步骤

    1.分解

    将原问题分解为若干个相互独立的阶段。 

    2.解决

    对于每个阶段依据贪心策略进行贪心选择,求出局部的最优解。

    3.合并

    将各个阶段的解,合并为原问题的一个可行解。

    四、贪心策略的选择

    1.盛水最多的容器

    盛最多水的容器——LeetCode_AllenC6的博客-CSDN博客盛最多水的容器、贪心算法、LeetCodehttps://blog.csdn.net/m0_37707561/article/details/125504342这个题目就是用的贪心算法:

    贪心策略:

    首先明确一点,这个容器的高以两个边中更小的那个边为准(木桶原理)

    从两边开始,每次都选两条边更小的那个,往中间移动一位,因为更小的这个后面有可能有比它更大的,这样就可能出现比当前更大的容器。

    最后你会发现,贪心策略筛选出的最大容器,正好是这些所有组合中最大的,这就叫整体最优解可以通过一系列局部最优的选择

     2.钱币找零

    假设1元、2元、5元、10元、20元、50元、100元的纸币分别有c0, c1, c2, c3, c4, c5, c6张。现在要用这些钱来支付K元,至少要用多少张纸币?

    贪心策略: 用贪心算法的思想,很显然,每一步尽可能用面值大的纸币即可.

  • 相关阅读:
    搜索与图论——Prim算法求最小生成树
    trivy【1】工具扫描运用
    手机呼叫转移怎么设置
    用rpm -e --nodeps进行批量删除
    MyBatis Plus 实现获取自动生成主键值的方法
    卷积神经网络权重是什么,卷积神经网络卷积过程
    国密改造什么意思?国密SSL证书在国密改造中有什么作用?
    故障诊断 | MATLAB实现GRNN广义回归神经网络故障诊断
    SpringBoot学习笔记-配置MySQL与实现注册登录模块(上)
    兰顿蚂蚁:从无序到有序的伟大征程
  • 原文地址:https://blog.csdn.net/m0_37707561/article/details/125504892
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号