leetcode刷题十三
题目叙述
给定两个由一些 闭区间 组成的列表,firstList 和 secondList ,其中 firstList[i] = [starti, endi] 而 secondList[j] = [startj, endj] 。每个区间列表都是成对 不相交 的,并且 已经排序 。
返回这 两个区间列表的交集 。
形式上,闭区间 [a, b](其中 a <= b)表示实数 x 的集合,而 a <= x <= b 。
两个闭区间的 交集 是一组实数,要么为空集,要么为闭区间。例如,[1, 3] 和 [2, 4] 的交集为 [2, 3] 。
题目解答
class Solution:
def intervalIntersection(self, firstList: List[List[int]], secondList: List[List[int]]) -> List[List[int]]:
if len(firstList) == 0 or len(secondList) == 0:
return []
else:
out = []
for i in firstList:
num1 = i[0]
num2 = i[1]
for j in secondList:
num3 = j[0]
num4 = j[1]
if num1 > num4 or num3 > num2:
continue
else:
nums = [num1, num2, num3, num4]
nums.sort()
out.append([nums[1], nums[2]])
return