追梦少年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 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)