c#检查指定范围中缺失的范围
本文关键字:范围 检查 | 更新日期: 2023-09-27 18:15:59
a = 1-30
b = 40-50
c = 60-100
以上范围为1 ~ 100。这个距离是31-39。
c#是否有一个函数来检查指定的范围(1-100)是否缺少任何范围(例如:31-39)或缺少值(例如:31)?对
假设'input'包含输入,如果范围中缺少任何数字,则以下代码将返回true:
bool result = Enumerable.Range(1, 100).Except(input).Any();
你可以像这样创建你自己的方法:
public List<int> CheckRange(int FirstRangeEnd, int SecondRangeStart)
{
List<int> missing = new List<int>();
if (SecondRangeStart - FirstRangeEnd == 0)
{
missing.Add(-1);
return missing;
}
for (int i= 0; i<= SecondRangeStart - FirstRangeEnd; i++)
{
missing.Add(FirstRangeEnd + i);
}
missing.RemoveAt(0);
missing.RemoveAt(missing.Count - 1);
return missing;
}