贪心算法-蓝桥杯
一、贪心算法的优缺点
优点:
1.容易理解:生活常见。
2.操作简单:在每一步都选局部最优。
3.效率高: 复杂度常常是O(1)的。
缺点:
1.局部最优不一定是全局最优。
二、例子: 最少硬币问题
硬币面值1、2、5。支付13元,要求硬币数量最少。
贪心法:
(1) 5元硬币,2个
(2) 2元硬币,1个
(3) 1元硬币,1个
硬币面值1、2、4、5、6。支付9元,要求硬币数量最少。
贪心法:
(1) 6元硬币,1个
(2) 2元硬币,1个
(3) 1元硬币,1个
错误! 答案是:5元硬币+4元硬币。
硬币问题的正解是动态规划。
三、贪心和动态规划
贪心法求解的问题满足以下特征:
(1) 最优子结构性质。当一个问题的最优解包含其子问题的最优解时,称此问题具有最优子结构性质,也称此问题满足最优性原理。从局部最优能扩展到全局最优。
(2) 贪心选择性质。问题的整体最优解可以通过一系列局部最优的选择来得到。
动态规划:
(1) 重叠子问题:子问题是原大问题的小版本;计算大问题的时候,需要多次重复计算小问题。
(2) 最优子结构:大问题的最优解包含小问题的最优解;可以通过小问题的最优解推导出大问题的最优解。
四、真题实例(1513号)


代码

五、真题实例(775号)


代码

六、贪心算法其它真题

相关文章:
贪心算法-蓝桥杯
一、贪心算法的优缺点优点:1.容易理解:生活常见。2.操作简单:在每一步都选局部最优。3.效率高: 复杂度常常是O(1)的。缺点:1.局部最优不一定是全局最优。二、例子: 最少硬币问题硬币面值1、2、5。支付13元,要求硬币数量最少。贪心法: (1) 5元…...
zookeeper 复习 ---- chapter03
zookeeper 复习 ---- chapter03如何创建 zookeeper 对象 要求: 1:知道这几个构造参数 2:知道每一个参数的含义 ZooKeeper(String connectString, int sessionTimeout, Watcher watcher) ZooKeeper(String connectString, int sessionTimeout…...
1.PostgreSQL
文章目录LIMITWITH 和RECURSIVEPostgreSQL 约束PostgreSQL AUTO INCREMENT(自动增长)PostgreSQL PRIVILEGES(权限)GRANT语法LIMIT SELECT * FROM COMPANY LIMIT 3 OFFSET 2;WITH 和RECURSIVE WITH RECURSIVE t(a,b) AS (VALUES (…...
buu [UTCTF2020]basic-crypto 1
题目描述: 01010101 01101000 00101101 01101111 01101000 00101100 00100000 01101100 01101111 01101111 01101011 01110011 00100000 01101100 01101001 01101011 01100101 00100000 01110111 01100101 00100000 01101000 01100001 01110110 01100101 00100000 0…...
火山引擎数智平台的这款产品,正在帮助 APP 提升用户活跃度
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 你有没有关注过 APP 给你推送的消息? 出于提升用户活跃度的考虑,APP 会定期在应用内面向用户进行内通推送,推送形式既包括 APP …...
记录每日LeetCode 2341.数组能形成多少数对 Java实现
题目描述: 给你一个下标从 0 开始的整数数组 nums 。在一步操作中,你可以执行以下步骤: 从 nums 选出 两个 相等的 整数从 nums 中移除这两个整数,形成一个 数对 请你在 nums 上多次执行此操作直到无法继续执行。 返回一个下标…...
Ant Design Chart词云图
什么是词云图?词云图,也叫文字云,是对网络文本中出现频率较高的“关键词”予以视觉上的突出,出现越多,显示的字体越大,越突出,这个关键词也就越重要。让浏览者通过词云图一眼就可以快速感知最突…...
mysql索引
索引 mysql索引: 在MySQL中,索引是存储引擎实现的,所以没有统一的索引标准,不同存储引擎的索引工作方式也不一样,也不是所有的存储引擎都支持所有类型的索引即使是多个存储引擎都支持同一种类型的索引,他…...
Java中怎样将数据对象序列化和反序列化?
程序在运行过程中,可能需要将一些数据永久地保存到磁盘上,而数据在Java中都是保存在对象当中的。那么我们要怎样将对象中的数据保存到磁盘上呢?这时就需要使用Java中的对象序列化。对象的序列化(Serializable)是指将一个Java对象转换成一个I/O流中字节序…...
ffmpeg filter的理解
ffmpeg filter的理解 filter的简介 从整体看,filte rgraph包含filter chain,而filter chain又包含了filter,所以可以分为是三个层次去理解。 filterfilter chainfilter graph filter graph是链接多个filter的有向图。它可以包含循环&#…...
炔活化的生物素化试剂773888-45-2,Alkyne-Biotin,炔基生物素
【产品描述】炔活化的生物素化试剂,可通过铜催化的点击反应与叠氮化物反应,产生稳定的三唑键,生物素炔烃在结构上与生物素炔烃相同。用于通过点击化学制备各种生物素化共轭物的生物素炔烃。Alkyne activated biotinylation reagents can prod…...
了解僵尸网络攻击:什么是僵尸网络,它如何传播恶意软件以及如何保护自己?
进行系统安全安排的专业人员非常了解“僵尸网络”一词。通常用于被劫持的计算机/系统链,如果指示恢复性和健壮的系统,则应很好地理解“僵尸网络”一词,因为它们的错误使用会导致巨大的混乱。 文章目录前言一、僵尸网络定义僵尸网络如何工作&a…...
大学生博主-14天学习挑战赛活动-CSDN
还在为写文没有流量发愁吗?还沉浸在假期中无法恢复状态吗?赶快来参与面向CSDN的大学生博主而举办的活动吧!本次活动为了避免刷量行为,也为了保持公平性,能够选出最优秀的文章,特意邀请了五位在C站具有一定影…...
如何自学芯片设计?
众所周知,芯片设计自学还是比较困难的,更不存在速成的。这里简单说一下学习的规划。 学会相应的知识 无论是科班毕业,还是理工科专业,想要入行IC,那就一定要具备相关的基础知识。尤其是在学校里,学习的很…...
通过中断控制KUKA机器人暂停与再启动的具体方法示例
通过中断控制KUKA机器人暂停与再启动的具体方法示例 中断程序的基本介绍: 当出现例如输入信号变化等事先定义的事件时,机器人控制器中断当前程序,并处理一个已定义好的子程序 由中断而调用的子程序称为中断程序 最多允许同时声明32个中断 同一时间最多允许有16个…...
pandas基本操作
df.head()/tail() 查看头/尾5条数据;df.info 查看表格简明概要;df.dtypes 查看字段数据类型;df.index 查看表格索引;df.columns 查看表格列名;df.values 以array形式返回指定数据的取值;list(dt.groupby(&q…...
论文笔记NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis
NeRF使用神经网络来表示场景。给定一个场景,输入该场景稀疏的视角图片,NeRF可以合成该场景新的视角的图片。 神经辐射场 神经辐射场(neural radiance field,NeRF)使用5D的向量值函数表示一个场景。 输入是连续的5D坐…...
花3个月面过京东测开岗,拿个20K不过分吧?
背景介绍 计算机专业,代码能力一般,之前有过两段实习以及一个学校项目经历。第一份实习是大二暑期在深圳的一家互联网公司做前端开发,第二份实习由于大三暑假回国的时间比较短(小于两个月),于是找的实习是在…...
Leetcode DAY 35:柠檬水找零and根据身高重建队列 and用最少数量的箭引爆气球
860.柠檬水找零 class Solution { public:bool lemonadeChange(vector<int>& bills) {int five 0;int ten 0;for(int i 0; i < bills.size(); i) {if(bills[i] 5) {five;} else if(bills[i] 10) {ten;five--;if(five < 0){return false;}} else {if(ten …...
java-spring_bean实例化
bean是如何创建的实例化bean的三种方式构造方法静态工厂(了解)实例工厂与FactoryBean实例工厂FactoryBeanbean是如何创建的实例化bean的三种方式 构造方法 bean本质上就是对象,创建bean使用构造方法完成 提供可访问的构造方法 public clas…...
Wireshark抓包实战:手把手教你解析IEC61850 GOOSE报文(附ASN.1解码技巧)
Wireshark实战解析IEC61850 GOOSE报文:从抓包到ASN.1解码全流程 在智能变电站自动化系统中,GOOSE(Generic Object Oriented Substation Event)报文作为IEC61850标准的核心通信机制,承担着保护跳闸、断路器位置信号等关…...
从‘//’到‘///’:解锁C#注释的正确姿势与隐藏的IDE效率技巧
从‘//’到‘///’:解锁C#注释的正确姿势与隐藏的IDE效率技巧 在代码的世界里,注释就像地图上的标记,不仅指引着后来的开发者理解代码的意图,更是开发者与未来自己对话的桥梁。对于C#开发者而言,注释不仅仅是简单的代…...
GraphRAG + Multi-Agent 凭什么登上 Nature?拆解 2026 年首个生产级统一多模态平台
2026 年 5 月,Nature Scientific Reports 刊出了一篇看起来有点"反常识"的论文——它没有提出新的模型架构,没有刷新 benchmark SOTA,但把 GraphRAG Multi-Agent 多模态 三件已经各自被研究烂了的事,第一次系统化地拼…...
Royal TSX中文汉化:解锁macOS远程管理的母语体验
Royal TSX中文汉化:解锁macOS远程管理的母语体验 【免费下载链接】Royal_TSX_Chinese_Language_Pack Royal_TSX的简体中文汉化包 项目地址: https://gitcode.com/gh_mirrors/ro/Royal_TSX_Chinese_Language_Pack 对于macOS平台的专业用户来说,Roy…...
Claude Code用户如何配置Taotoken解决密钥与额度问题
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Claude Code用户如何配置Taotoken解决密钥与额度问题 对于使用Claude Code进行编程辅助的开发者来说,直接使用原厂服务…...
英雄联盟段位修改终极指南:5分钟掌握LeaguePrank伪装技巧
英雄联盟段位修改终极指南:5分钟掌握LeaguePrank伪装技巧 【免费下载链接】LeaguePrank 项目地址: https://gitcode.com/gh_mirrors/le/LeaguePrank 你是否想过在英雄联盟中展示不同的段位给好友看?LeaguePrank正是为你量身打造的段位修改神器&a…...
Diablo Edit2终极指南:免费开源的暗黑破坏神2存档编辑器
Diablo Edit2终极指南:免费开源的暗黑破坏神2存档编辑器 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 想要在暗黑破坏神2中打造完美角色,却厌倦了无尽的刷怪过程…...
Vivado携手Modelsim:跨越版本鸿沟的仿真实战指南
1. 为什么需要Vivado与Modelsim联合仿真? 刚接触FPGA开发的朋友可能会疑惑:Vivado明明自带仿真工具,为什么还要折腾第三方工具?这个问题我十年前刚开始用ISE套件时就深有体会。Vivado Simulator虽然集成度高,但存在几…...
如何用FastbootEnhance告别复杂命令行,实现Android设备可视化刷机
如何用FastbootEnhance告别复杂命令行,实现Android设备可视化刷机 【免费下载链接】FastbootEnhance A user-friendly Fastboot ToolBox & Payload Dumper for Windows 项目地址: https://gitcode.com/gh_mirrors/fa/FastbootEnhance 你是否曾经因为Andr…...
LSTM门控机制与工业级鲁棒性实战指南
1. 为什么今天还要认真学LSTM?一个被低估的“老派”模型的真实价值你可能已经注意到,现在打开任何技术社区,满屏都是Transformer、LLM、MoE这些词。LSTM似乎成了教科书里那个“上一代”的配角,连面试官问起都带着点“这题是不是太…...
