blog/source/_posts/2020-04-16-leetcode-merge-intervals.md
Ching 9690121403 feat(init project): add all existing files
add all existing files

Signed-off-by: Ching <loooching@gmail.com>
2022-02-02 19:04:18 +08:00

748 B

title date tags categories
leetcode-merge-intervals 2020-04-16 19:22:26 leetcode

56. 合并区间

题目

首先将区间按起点由小到大排序,这样相邻的两个就能通过终点判断是否重合。

class Solution:
  def merge(self, intervals):
    if not intervals:
      return []
    intervals.sort()
    merged = []
    l = len(intervals)
    m = intervals[0]
    for x in range(l-1):
      j = intervals[x+1]
      if m[1] >= j[0]:
        if m[1] <= j[1]:
          m = [m[0], j[1]]
        else:
          continue
      else:
        merged.append(m)
        m = j
    if m:
      merged.append(m)
    return merged