думал, что смогу проверить различные ответы, которые я получил в своем вопросе об алгоритме для коллапсирующих диапазонов . Поэтому я подумал, что мне следует создать метод, который создает целую кучу диапазонов, и посмотреть, как различные методы справляются с этим.
Но когда дело доходит до генерации случайных вещей, я не очень хорош. Я создал что-то вроде этого:
private static IEnumerable<Range<int>> GenerateRanges()
{
var r = new Random();
var n = 10000;
while(--n >= 0)
{
var start = r.Next(10000);
var end = r.Next(10000);
if (end < start)
Swap(ref start, ref end);
yield return Range.Create(start, end);
}
}
Конечно, это создает много диапазонов, но они не дают особенно интересных результатов, так как я всегда получаю только один диапазон после их свертывания. Как я могу создать более интересные диапазоны?