gpt4 book ai didi

python - 要将一组重叠范围转换为非重叠范围?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:23:37 26 4
gpt4 key购买 nike

考虑这个例子:

a = [[95.958, 101.566], [117.665, 121.995], [138.909, 153.961],
[154.529, 252.391], [229.633, 232.087], [268.995, 269.266],
[269.432, 283.028], [286.432, 364.575], [366.179, 437.013],
[446.27, 601.232], [585.713, 1374.37], [1287.678, 2464.882],
[2273.926, 5218.017]]

基于上述数组元素

[446.27, 601.232], [585.713, 1374.37], 
[1287.678, 2464.882], [2273.926, 5218.017]

这些相互重叠。因此,从一个非重叠范​​围,这些元素成为一个元素

[446.27, 5218.017]

所以最后的数组会变成

a = [[95.958, 101.566], [117.665, 121.995], [138.909, 153.961],
[154.529, 252.391], [229.633, 232.087], [268.995, 269.266],
[269.432, 283.028], [286.432, 364.575], [366.179, 437.013],
[446.27,5218.017]]

如果有人可以建议在 python 中执行此操作的代码会有帮助吗?

最佳答案

让您的左手右手 一次引用一个项目,并为合并结果生成一个输出 列表。

  1. 从序列中的第一个元素开始,用您的左手 将其拾取。
  2. 用您的右手选择下一个。
  3. 检查您的左手 手是否与您的右手 重叠:
    • 如果它们重叠,将您的左手 手与您的右手 手合并,并与您的左手 手保持一致
    • 如果没有重叠,将您的左手 手添加到输出 列表,并将您的右手 手移到您的左手 手。
  4. 转到 2,直到没有更多项目剩余。
  5. 如果您的左手有一个元素,将它添加到output

关于python - 要将一组重叠范围转换为非重叠范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23293612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com