ListString 中存了开始时间-结束时间比较这个集合中是否存在重复区间
可以通过遍历集合中的每个区间,并将其转换为起始时间和结束时间的形式,然后检查是否存在重叠区间。以下是一个Java示例代码:
public boolean hasDuplicateIntervals(List<String> intervals) {
List<Pair<Integer, Integer>> pairs = new ArrayList<>();
// 将每个区间转换为起始时间和结束时间的形式,并存储到Pair中
for (String interval : intervals) {
String[] times = interval.split("-");
int start = Integer.parseInt(times[0]);
int end = Integer.parseInt(times[1]);
pairs.add(new Pair<>(start, end));
}
// 检查是否存在重叠区间
for (int i = 0; i < pairs.size(); i++) {
for (int j = i + 1; j < pairs.size(); j++) {
Pair<Integer, Integer> p1 = pairs.get(i);
Pair<Integer, Integer> p2 = pairs.get(j);
if (p1.first < p2.second && p2.first < p1.second) {
return true; // 存在重叠区间
}
}
}
return false; // 不存在重叠区间
}
该方法将List
原文地址: https://www.cveoy.top/t/topic/huSO 著作权归作者所有。请勿转载和采集!