python区间合并
时间: 2024-01-17 19:19:39 浏览: 146
python-leetcode面试题解之第163题缺失的区间-题解.zip
以下是一个用Python实现的区间合并的例子:
```python
def merge(intervals):
intervals.sort(key=lambda x: x[0]) # 按照区间的起始位置进行排序
merged = []
for interval in intervals:
if not merged or merged[-1][1] < interval[0]: # 如果当前区间与已合并的区间不重叠
merged.append(interval)
else: # 如果当前区间与已合并的区间重叠,则更新已合并的区间的结束位置
merged[-1][1] = max(merged[-1][1], interval[1])
return merged
intervals = [[1,3],[2,6],[8,10],[15,18]]
result = merge(intervals)
print(result) # 输出:[[1, 6], [8, 10], [15, 18]]
```
这个例子中,我们首先对区间列表按照起始位置进行排序。然后,我们遍历排序后的区间列表,如果当前区间与已合并的区间不重叠,则将当前区间添加到已合并的区间列表中;如果当前区间与已合并的区间重叠,则更新已合并的区间的结束位置为当前区间的结束位置的较大值。最后,返回已合并的区间列表。
阅读全文