目前,我的间隔时间为:
temp_tuple = [[-25, -14], [-21, -16], [-20, -15], [-10, -7], [-8, -5], [-6, -3], [2, 4], [2, 3], [3, 6], [12, 15], [13, 18], [14, 17], [22, 27], [25, 30], [26, 29]]
按下限升序排列。我的任务是合并重叠的间隔,以便结果是:
[-25, -14]
[-10, -3]
[2, 6]
[12, 18]
[22, 30]
我的第一次尝试涉及删除完全在先前间隔内的间隔,例如 [-21, -16] 落在 [-25, -14] 内。但是删除列表中的对象会一直干扰循环条件。我第二次尝试删除不必要的间隔是:
i = 0
j = 1
while i < len(temp_tuples):
while j < len(temp_tuples):
if temp_tuples[i][1] > temp_tuples[j][1]:
del temp_tuples[j]
j += 1
i += 1
但这并不会因为某种原因删除所有不必要的间隔。
我应该怎么办?