Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],…] (si < ei), determine if a person could attend all meetings.
For example,
Given [[0, 30],[5, 10],[15, 20]], return false.
思路:
1. 需要比较时间段是否重合,所以需要排序!!
2. 复杂度o(nlgn)
bool canAttendMeetings(vector<Interval>& intervals) {
sort(intervals.begin(),intervals.end(),[](Interval&a,Interval&b){
if(a.start==b.start) return a.end<b.end;
return a.start<b.start;});
for(int i=1;i<intervals.size();i++){
if(intervals[i].start<intervals[i-1].end) return false;
}
return true;
}