尊敬的同事们。 我有一个段列表,其中可能包含应删除的嵌套段。
例如我们有一个元组列表(或者可能是其他数据结构):
[(50, 60), (10, 20), (10, 40), (40, 60), (60, 80), (75, 95), (95, 100)]
或者范围列表:
[range(50, 60), range(10, 20), range(10, 40), range(40, 60), range(60, 80), range(75, 95), range(95, 100)]
结果应该是:
[(10, 40), (40, 60), (60, 80), (75, 95), (95, 100)]
我必须删除所有嵌套的段。
此外,我不允许使用任何图书馆,甚至
import
的。
其实,我很困惑,所以我会非常感谢任何帮助。
对于每个段,您检查它是否嵌套在其他段中。如果是,则使用
remove
函数。
segments = [(10, 40), (40, 60), (60, 80), (75, 95), (95, 100)]
segments_copy = segments.copy()
for seg_1 in segments_copy:
for seg_2 in segments_copy:
if seg_1 != seg_2 and seg_1[0] >= seg_2[0] and seg_1[1] <= seg_2[1]:
segments.remove(seg_1)