252. Meeting Rooms - cocoder39/coco39_LC GitHub Wiki
class Solution:
def canAttendMeetings(self, intervals: List[List[int]]) -> bool:
intervals.sort()
for i in range(1, len(intervals)):
if intervals[i][0] < intervals[i-1][1]:
return False
return True
Comparator is a static member method because the comparison is not between object and object but within the whole intervals
vector.
static bool cmp(Interval& interval1, Interval& interval2) {
return interval1.start < interval2.start;
}
T = O(N * log N) and S = O(1)
class Solution {
public:
bool canAttendMeetings(vector<Interval>& intervals) {
sort(intervals.begin(), intervals.end(), cmp);
for (int i = 1; i < intervals.size(); i++) {
if (intervals[i].start < intervals[i - 1].end)
return false;
}
return true;
}
private:
static bool cmp(Interval& interval1, Interval& interval2) {
return interval1.start < interval2.start;
}
};
bool canAttendMeetings(vector<Interval>& intervals) {
sort(intervals.begin(), intervals.end(), [](Interval i1, Interval i2) {
return i1.start <= i2.start;
});
for (int i = 1; i < intervals.size(); i++) {
if (intervals[i].start < intervals[i - 1].end) {
return false;
}
}
return true;
}