我有一个日期范围列表。
05/01/2012 - 07/01/2012
07/02/2012 - 09/05/2012
01/01/2012 - 03/31/2012
08/01/2012 - 12/31/2012
现在的问题是验证给定列表是否涵盖特定范围内的所有日期。例如,此列表涵盖 05/01/2012 - 12/31/2012 范围内的所有日期,但非 01/01/2012-12/31/2012,因为此列表未涵盖 4 月日期。假设是,
- 日期范围有效 - 开始日期 <= 结束日期。
- 日期范围可能会重叠,如上述第 2 和第 4 的情况。
- 列表不以任何方式排序。
到目前为止,我所做的是测试异常值,例如,
查找最小开始日期和最大结束日期 - 如果测试日期范围的开始日期和/或结束日期分别小于/大于这些日期,则测试失败。
但是,在中间检查任何错过的日期的最佳策略是什么?提前致谢!