Leetcode尊享面试100题:252. 会议室

给定一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间 intervals[i] = [starti, endi] ,请你判断一个人是否能够参加这里面的全部会议。

示例 1:

复制代码
输入:intervals = [[0,30],[5,10],[15,20]]
输出:false

示例 2:

复制代码
输入:intervals = [[7,10],[2,4]]
输出:true

提示:

  • 0 <= intervals.length <= 104
  • intervals[i].length == 2
  • 0 <= starti < endi <= 106

题目太简单10行以内的有效代码,直接上代码,有疑问请留言或者私信:

java 复制代码
class Solution {
    //解题思路:把数组按照开始时间排序,如果开始时间相同,按照结束时间排序
    //拍完序之后如果某个会议的开始时间小于上个会议的结束时间就无法参加所有的会议
    public boolean canAttendMeetings(int[][] intervals) {
        if(intervals == null || intervals.length < 2) {
            return true;
        }
        //把会议数组排序
        Arrays.sort(intervals, (a,b)->a[0] == b[0]? a[1] - b[1] : a[0] - b[0]);
        for(int i = 1; i < intervals.length; i++) {
            if(intervals[i][0] < intervals[i-1][1]) {
                return false;
            }
        }
        /**for循环过程没有发现冲突,说明可以开完 */
        return true;
    }
}

运行效果:

相关推荐
I_LPL7 小时前
hot100贪心专题
数据结构·算法·leetcode·贪心
颜酱7 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
发现一只大呆瓜8 小时前
React-彻底搞懂 Redux:从单向数据流到 useReducer 的终极抉择
前端·react.js·面试
WolfGang0073218 小时前
代码随想录算法训练营 Day16 | 二叉树 part06
算法
零雲8 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
uzong8 小时前
Skill 被广泛应用,到底什么是 Skill,今天详细介绍一下
人工智能·后端·面试
发现一只大呆瓜9 小时前
React-路由监听 / 跳转 / 守卫全攻略(附实战代码)
前端·react.js·面试
2401_831824969 小时前
代码性能剖析工具
开发语言·c++·算法
Sunshine for you10 小时前
C++中的职责链模式实战
开发语言·c++·算法
qq_4160187210 小时前
C++中的状态模式
开发语言·c++·算法