算法的暴力美学之贪心算法
14天阅读挑战赛
努力是为了不平庸~
算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算法的理解,同时吸收他人的奇思妙想,一起见证技术er的成长~
算法知识点
编程语言:Java
算法知识点:贪心算法
概念:就是采用贪心策略保证每次操作都是局部最优解,从而是全局最优。我理解的大概意思就是:把自己想象成一个贪财地主,在保证每个下人都能分配到钱的情况下,是自己出的钱最少。
算法题目描述
你是一个(很贪心)地主,到了给下人发粮食的时候了。你有若干堆粮食。你还有若干个下人,每个下人只有有一堆粮食,有胖有瘦,胖的多吃瘦的少吃。只有这个粮食足够多才能让下人吃饱,问几个下人可以吃饱?
做题思路
因为最瘦的下人最容易吃饱,所以我们先让最小的粮食给到最瘦的下人(大于等于),然后在考虑其他的下人。
模板代码
static int soile(int[] A,int[]B){Arrays.sort(A);Arrays.sort(B);int a=0;//能吃饱下人的数量int b=0;while ((a<A.length&&b<B.length)){if (A[a] <= B[b++] )a++;}return a; }
static int soile(int[] A,int[]B){Arrays.sort(A);Arrays.sort(B);int a=0;//能吃饱下人的数量int b=0;while ((a<A.length&&b<B.length)){if (A[a] <= B[b++] )a++;}return a;}
算法的暴力美学之贪心算法相关推荐
- 算法之暴力美学的开始
14天阅读挑战赛 努力是为了不平庸~ 算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算 ...
- 哈夫曼编码压缩率计算_程序员的算法课(8)-贪心算法:理解霍夫曼编码
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/m0_37609579/article/ ...
- 程序员的算法课(8)-贪心算法:理解霍夫曼编码
一.一种很贪婪的算法定义 贪心是人类自带的能力,贪心算法是在贪心决策上进行统筹规划的统称. [百度百科]贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体 ...
- 数据结构与算法学习⑤(BFS和DFS 贪心算法 二分查找)
数据结构与算法学习⑤ 数据结构与算法学习⑤ 1.BFS和DFS 1.1.深度优先搜索算法 1.2.广度优先搜索算法 面试实战 102. 二叉树的层序遍历 104. 二叉树的最大深度 515. 在每个树 ...
- 算法基础(Java)--贪心算法
前言 前面简单的介绍了八大经典排序算法,此文将要介绍贪心算法,并介绍一些常见贪心算法题目. 1. 贪心算法的概念 所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最 ...
- 算法导论-上课笔记7:贪心算法
文章目录 0 前言 1 活动选择问题 1.1 活动选择问题的最优子结构 1.2 贪心选择 1.3 递归贪心算法 1.4 迭代贪心算法 2 贪心算法原理 2.1 贪心选择性质 2.2 最优子结构 2.3 ...
- 算法学习笔记22:贪心算法
目录 贪心算法:如何用贪心算法实现Huffman压缩编码 如何理解"贪心算法" 贪心算法实战分析 1.分糖果 2. 钱币找零 3. 区间覆盖 解答开篇 内容小结 贪心算法:如何用贪 ...
- 五大常用算法入门(一)——贪心算法
文章目录 1.贪心算法简介 1.1 基本定义 1.2 贪心算法案例 1.3.贪心算法的基本思路 2.贪心算法最优性证明 2.1 贪心算法的前提 2.2 最优子结构 2.3 贪心算法与动态规划的区别 3 ...
- 算法基础--优惠券问题(贪心算法)
算法基础–优惠券问题(贪心算法) 近期某商场由于周年庆,开启了"0元购"活动.活动中,消费者可以通过组合手中的代金券,实现0元购买指定商品. 聪明的小团想要用算法来帮助他快速计算: ...
最新文章
- SpringBoot系列: 单元测试
- 聊聊flink的FencedAkkaInvocationHandler
- Hystrix之Dashboard的常见问题
- 需求决定设计,设计来源于需求
- leetcode129. 求根到叶子节点数字之和
- ORA-28001: the password has expired (DBD ERROR: OCISessionBegin)解决办法
- ad焊盘对参考点复制_点对点复制
- hbase shell相关命令
- 图神经网络(GCN)
- 土木想往土木软件开发方向发展,应该如何准备
- 什么是电感器与电感?
- PAT甲级刷题计划-树
- 【附源码】计算机毕业设计java音乐鉴赏网站前端开发设计与实现
- 手把手教你PS一个科技感的系统背景图
- 计算机考试金麦圈编号教程,计算机二级:数据处理.docx
- redis内存回收——过期、淘汰
- iscsi 远程连接磁盘
- 云生态瞭望 | 腾讯云生态暖伙伴心
- (笔记)yolov5自适应anchors
- Linux 基础命令 -- usermod
热门文章
- 王下邀月熊的2016上半年博客精选
- 关于使用Gitee上传项目到云端的操作流程与问题解决
- 通过交换机让HDMI延长器传输500米-深圳朗强科技
- Nazo解密游戏攻略
- [转] iOS --- 应用架构谈之二: View层的组织和调用方案
- Nutch2 WebPage 字段解释
- 鼎捷T100制造之工艺工单实战(其他工艺补充)
- java支付接口开发原理_java对接微信支付接口开发的过程是什么?
- Ubuntu下安装Sublime Text3 汉化以及支持中文输入(2019.7.22更新)
- 水性氟碳涂料行业调研报告 - 市场现状分析与发展前景预测