相关疑难解决方法(0)

合并重叠间隔python

目前,我有以下间隔:

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]]
Run Code Online (Sandbox Code Playgroud)

按下限按升序排列.我的任务是合并重叠的间隔,以便结果出现:

[-25, -14]
[-10, -3]
[2, 6]
[12, 18]
[22, 30]
Run Code Online (Sandbox Code Playgroud)

我的第一次尝试涉及删除完全在先前间隔内的间隔,例如[-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
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,这并没有删除所有不必要的间隔.我该怎么办?

python

6
推荐指数
2
解决办法
3517
查看次数

标签 统计

python ×1