算法刷题之贪心算法
算法刷题之贪心算法
本杰明玩编程
做过后端开发,Android Framework,App开发,Ai infra模型推理。
熟悉编程语言C++,Java/Kotlin,python。
现在主要做语音相关的研发工作,主要包括kws,asr,nlu,dm,tts和Ai infra大模型推理。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
435. 无重叠区间
题目: 给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。 注意: 可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。 题解思路: 方法: 1.从区间集合 intvs 中选择一个区间 x,这个 x 是在当前所有区间中结束最早的(end 最小)。这就要对数组end部分排序。 2.把所有与 x 区间相交的区间从区间集合 intvs 中删除。 3.重复步骤 1 和 2,直到 intvs 为空为止。之前选出的那些 x 就是最大不相交子集。原创 2020-09-01 17:41:46 · 141 阅读 · 0 评论 -
55. 跳跃游戏
题目: 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 题解思路: 方法一:贪心算法 1.如果数组某一点的值为2,就可以跳跃的距离是2,可以在后面两个位置中,选择跳跃。 2.所选择某一点进行跳跃,都要达到跳跃最大值,这个跳跃距离最大值要进行比较更新。 3.若可以跳跃到数组末,则返回成功,否则返回失败。 函数代码: class Solution { public: bool canJump(vector<原创 2020-08-17 19:14:56 · 241 阅读 · 0 评论
分享