我已经在其他语言中看到过如何做到这一点的各种方法,但它似乎是一个常见的问题,似乎应该有一个标准的方法来做到这一点。
我想将浮点范围列表折叠为最小的表示。
2.45-3.72 3.16-6.55 7.23-8.96 8.95-10.27
会变成:
2.45-6.55 7.23-10.27
C ++中是否有一个函数或库可以将我的列表提供给我,它会为我执行还原吗?我可以很容易地写出自己的,但为什么它已经存在呢?
答案 0 :(得分:2)
Boost有interval library。这并没有明确包含您所需要的内容,但可能会更容易编写它。
就个人而言,查看文档时,它让我担心图书馆不会试图让您清楚地区分封闭和开放的间隔。但这对你的目的可能并不重要。
答案 1 :(得分:2)
声音简单:
这应该可以解决问题。
答案 2 :(得分:1)
我不认为标准会提供任何解决方案,这太具体了。