LeetCode 253. 会议室 II(贪心+优先队列)
文章目录
- 1. 题目
- 2. 解题
1. 题目
给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],…] (si < ei),
为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要多少间会议室,才能满足这些会议安排。
示例 1:
输入: [[0, 30],[5, 10],[15, 20]]
输出: 2示例 2:
输入: [[7,10],[2,4]]
输出: 1
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/meeting-rooms-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
类似题目:LeetCode 252. 会议室(排序)
- 开始时间一样,先结束的在前;开始早的在前
- 优先队列存储会议结束的时间,堆顶是结束时间早的
- 下一个会议开始时间早于堆顶的房间结束时间,该会议新开一个room,push进队列
- 最后返回队列的size
class Solution {public:int minMeetingRooms(vector<vector<int>>& intervals) {if(intervals.empty()) return 0;sort(intervals.begin(), intervals.end(),[&](auto a, auto b){if(a[0] == b[0])return a[1] < b[1];//开始时间一样,先结束的在前return a[0] < b[0];//开始早的在前});priority_queue<int,vector<int>,greater<int>> q;//小顶堆,存放会议室结束时间,小的在上q.push(intervals[0][1]);for(int i = 1; i < intervals.size(); ++i){if(intervals[i][0] >= q.top())//最早结束的会议室可用,占用它{q.pop();}q.push(intervals[i][1]);}return q.size();}
};
184 ms 26.6 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 253. 会议室 II(贪心+优先队列)相关推荐
- LeetCode 253. 会议室 II**(double)
具体思路: 貌似是个经典问题,只需要看车上有几个人同时存在即可: 这里最简洁的解法没有用堆或者其他数据结构,只需要让上车cnt+1,下车cnt减1,时间节点做key,用pair存储: 排序后,进行pa ...
- 【LeetCode笔记】253. 会议室 II(Java、偏数学)
文章目录 题目描述 思路 && 代码 计划里 hot 100 + 剑指Offer 的题目中唯一一道会员题,同时也是最后一道没写的题,刚好今天 leetcode 发了一天会员可以写上-简 ...
- 253. 会议室 II
问题 给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],-] (si < ei),为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要 ...
- 力扣253会议室II
使用堆排序 priority_queue默认是大顶堆等同于 priority_queue<int,vector,less > priority_queue<int,vector,gr ...
- LeetCode 252. 会议室(排序)
文章目录 1. 题目 2. 解题 1. 题目 给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],...] (si < ei),请你判断一个人是否 ...
- LeetCode 会议室 II
会议室 II 给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],-] (si < ei),为避免会议冲突,同时要考虑充分利用会议室资源,请你计算 ...
- 携程笔试(惨败经历)第一题 leetcode 253
刚开始生怕题做不完,选择题听说去年是15分钟20题,一顿乱选. 第一道选择题 树的前序遍历35421,中序遍历25431, 后序遍历应该是....? 这道题是不是有点问题,没敢仔细看就选了.... 编 ...
- 【BHOJ 女娲加农炮 |、||】贪心 | 优先队列 | 堆 | E
这次我们通过两道例题来总结一下优先队列的用法和实现: 目录: [BHOJ 1512]女娲加农炮 [BHOJ 1517]女娲加农炮II [BHOJ 1512]女娲加农炮 核心:贪心 + 优先队列 URL ...
- leetcode学习记录_贪心
贪心的特点就是不断求得局部最优解 然后用局部最优解求得全局最优解 55. 跳跃游戏 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 . 数组中的每个元素代表你在该位置可以跳跃的最大长度 ...
最新文章
- ldap 统一认证 java_如何在你的系统里集成LDAP统一认证
- Linux - 收藏集 - 掘金
- hdu 2007题解
- Java培训分享void的用法和意义
- 新建文章1,改名后按回车
- 在hadoop中传递变量
- fluent瞬态_Java中的瞬态关键字及其使用
- java lambda表达式详解_Lambda表达式详解
- php实现中间件6,THINKPHP6 实现中间件
- 不懂开发的运维,未来该如何发展?
- 这个高颜值的开源第三方网易云音乐播放器你值得拥有
- Android Expandable List View
- java实现中国象棋3:走棋规则的实现
- 时间漩涡的世界 (一)
- 这样创建EC2实例,才算没浪费AWS的一年免费套餐
- echarts中对整个图形旋转90°(实现div旋转90度)
- (XJTLU)Methodology to MAV Auto-Polination
- 【C语言程序设计】实验 4
- python itchat 抢红包-Python itchat模块在微信上的各种小应用
- SAP ABAP 模糊查询