zoukankan      html  css  js  c++  java
  • 56. Merge Intervals

    description:

    Given a collection of intervals, merge all overlapping intervals..
    Note:

    Example:

    Example 1:
    
    Input: [[1,3],[2,6],[8,10],[15,18]]
    Output: [[1,6],[8,10],[15,18]]
    Explanation: Since intervals [1,3] and [2,6] overlaps, merge them into [1,6].
    
    Example 2:
    
    Input: [[1,4],[4,5]]
    Output: [[1,5]]
    Explanation: Intervals [1,4] and [4,5] are considered overlapping.
    
    

    answer:

    class Solution {
    public:
        vector<vector<int>> merge(vector<vector<int>>& intervals) {
            if (intervals.empty()) return {};
            sort(intervals.begin(), intervals.end());
            vector<vector<int>> res{intervals[0]};
            for (int i = 0; i < intervals.size(); ++i) {
                if (res.back()[1] < intervals[i][0]) {
                    res.push_back(intervals[i]);
                } else {
                    res.back()[1] = max(res.back()[1], intervals[i][1]);
                }
            }
            return res;
        }
    };
    

    relative point get√:

    hint :

  • 相关阅读:
    Codeforces 977F
    Codeforces 219C
    Codeforces 1132
    Codeforces 660C
    Codeforces 603A
    Codeforces 777C
    Codeforces 677
    JNUOJ 1032
    Codeforces 677D
    Codeforces 835C
  • 原文地址:https://www.cnblogs.com/forPrometheus-jun/p/11279660.html
Copyright © 2011-2022 走看看