Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
January 5, 2022 06:56 pm GMT

Leetcode Merge Intervals - Solution & Video Explaination

Solution

vector<vector<int>> merge(vector<vector<int>>& intervals) {    // Edge Cases    if (intervals.size() <= 1) {        return intervals;    }    // Sorting    sort(intervals.begin(), intervals.end());    // Merging    vector<vector<int>> result;    result.push_back(intervals[0]);    for (int i = 1; i < intervals.size(); ++i) {        if (intervals[i][0] <= result.back()[1]) {            if (intervals[i][1] > result.back()[1]) {                result.back()[1] = intervals[i][1];            }        } else {            result.push_back(intervals[i]);        }    }    return result;}
def merge(intervals):    if len(intervals) <= 1:        return intervals    intervals.sort()    merged = [intervals[0]]    for interval in intervals[1:]:        if interval[0] <= merged[-1][1]:            if interval[1] > merged[-1][1]:                merged[-1][1] = interval[1]        else:            merged.append(interval)    return merged

Complexity

Runtime: O(nlogn)
Space: O(n)


Original Link: https://dev.to/shubhsheth/leetcode-merge-intervals-solution-video-explaination-4ei8

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To