1
16
基本上,一个日期范围与另一个日期范围重叠,如果它的任何结尾在另一个范围内,反之亦然。
|
2
7
所以如果我理解正确-你想确定日期范围2不在日期范围1内吗? 例如:
这应该是一个简单的例子:
|
3
3
像这样的情况应该可以做到:
|
4
2
这里有一个解决方案(缺少
|
5
2
有点晚了,但我在答案/评论中找不到这种模式。
|
6
0
如果你没有不同的排序标准,那么从保持列表的顺序开始。由于之前添加的对象不允许重叠,因此一旦知道要添加新对象的位置,只需比较任意一侧的单个对象即可确保允许添加新对象。您还只需要考虑“较早”对象的结束日期是否与“较晚”对象的开始日期重叠,因为这种顺序使得重叠的另一种可能性无关紧要。 因此,除了简化检测重叠的问题外,我们还可以将复杂性从O(n)of降低到O(logn),而不是与所有现有项进行比较,而是与通过O(logn)搜索找到的0-2进行比较。
|
7
0
|
8
0
我想出了以下方法来检查日期是否重叠,这可能不是最有效的方法,但我希望这有帮助。。
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |