追梦少年888 2018-03-12 08:01 采纳率: 100%
浏览 3639
已采纳

java 多个区间重叠算法,区间形成闭环的算法问题

系统界面有多个输入框 比如
1:>24
2: <5
3: 大于等于5 并且小于等于24

真实环境 可能不仅仅是三个区间 可能是更多区间 ,但是要求所有的区间是闭环的,并且区间是不能叠的

比如 如果上面三个区间 改为
1:>=24
2:小于等于5

3:大于等于5 并且小于等于24

改为这样的三个区间的话 就错了 因为等于5 和 等于24 有重叠了

同时用户输入的区间 还要形成一个闭环 比如 下面这三个就形成一个闭环
1:>24
2: 小于5
3: 大于等于5 并且小于等于24

如果改成
1:>24
2:<5
3:大于5 并且小于24
这样就不形成闭环了,因为没有包括 5 和 24 就提示用户输入错误。

现在求一个算法 来判断用户输入的多个区间 不能重叠,同时还要校验用户输入的区间是一个闭环?
有案例代码 最好

  • 写回答

5条回答 默认 最新

  • baidu_30233079 2018-03-12 08:49
    关注

    上一条少一个字“点”

    重叠算法就是上面写的,对于形成闭环的,在上面一步的基础上再进行遍历判断就可以了,伪代码我就不写了,说下方法

    把任一区间一个点和其它所有区的点进行比较,必须有相同数值的两个点且这两个区间点必须是互补,遍历所有点就可以了。
    我所说的互补是这样的,如一个区间是>5,那么另一个区间点必须是<=5

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的