猿问

求助,如何判断用户输入的区间不重复

如图,每一行就是一个区间,行数不确定
判断用户输入的区间不重复才能提交成功,不填就是默认的最大和最小
可以选择包含或不包含对应的值,想得头都大了(T_T)

Qyouu
浏览 701回答 2
2回答

qq_遁去的一_1

var source = [&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; min: {include: false, value: 10},&nbsp; &nbsp; &nbsp; &nbsp; max: {include: true, value: 20}&nbsp; &nbsp; },&nbsp; &nbsp; ...]类似这样的数据结构,再判断一下是否重复就行吧。挨个从source中进行判断,相当于判断两条线段是否重复了。比如两条线段A、B。如果A.max <(=) B.min || A.min >(=) B.max。则这两条线就是不重复的。

富国沪深

看了一下是不是可以用一个二维数组解决:(function(arr){&nbsp; for(let i=0;i<arr.length;i++){&nbsp; &nbsp; if(arr[i][0] > arr[i][1]) return false;&nbsp; &nbsp; if(arr[i+1] && arr[i][1] > arr[i+1][0]) return false;&nbsp; }&nbsp; return true;})([[1,2],[3,4],[7,9]])这个函数执行结果就是根据是否有重复的区间,如果有就返回false如果没有就返回ture。至于包含不包含,就在于你如何初始化这个二维数组了。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答