LC 986. Interval List Intersections

Posted ethanhong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LC 986. Interval List Intersections相关的知识,希望对你有一定的参考价值。

Given two lists of closed intervals, each list of intervals is pairwise disjoint and in sorted order.

Return the intersection of these two interval lists.

(Formally, a closed interval [a, b] (with a <= b) denotes the set of real numbers x with a <= x <= b.  The intersection of two closed intervals is a set of real numbers that is either empty, or can be represented as a closed interval.  For example, the intersection of [1, 3] and [2, 4] is [2, 3].)

 

 

class Solution {
public:
  vector<Interval> intervalIntersection(vector<Interval>& A, vector<Interval>& B) {
    int ai = 0, bi = 0;
    vector<Interval> ret;
    while(ai < A.size() && bi < B.size()) {
      if(A[ai].end < B[bi].start) {
        ai++;
        continue;
      } else if(B[bi].end < A[ai].start) {
        bi++;
        continue;
      }
      ret.push_back(Interval(max(A[ai].start, B[bi].start), min(A[ai].end, B[bi].end)));
      if(A[ai].end <= B[bi].end) {
        ai++;
      }else{
        bi++;
      }
    }
    return ret;
  }
};

 

以上是关于LC 986. Interval List Intersections的主要内容,如果未能解决你的问题,请参考以下文章

986. Interval List Intersections

986. Interval List Intersections

leetcode986. Interval List Intersections

leetcode986

986. 区间列表的交集

LC436. Find Right Interval