Поэтому, учитывая, что у меня есть этот массив диапазонов:Сравнение элементов внутри массива диапазонов
[
[0] Mon, 29 Dec 2014 07:30:00 PST -08:00..Mon, 29 Dec 2014 10:59:59 PST -08:00,
[1] Mon, 29 Dec 2014 12:30:01 PST -08:00..Mon, 29 Dec 2014 15:00:00 PST -08:00,
[2] Mon, 29 Dec 2014 07:30:00 PST -08:00..Mon, 29 Dec 2014 08:59:59 PST -08:00,
[3] Mon, 29 Dec 2014 10:30:01 PST -08:00..Mon, 29 Dec 2014 15:00:00 PST -08:00
]
Как сравнить диапазоны, которые имеют одинаковое минимальное значение, и удалить этот элемент, если максимальное значение больше, чем другие ?
Существует несколько подходов, которые вы можете использовать. Один из них - 'group_by' начало диапазона, а затем для каждой группы сохраняют диапазон, конечное значение которого наименьшее. Другим является 'sort_by'' [r.first, -r.last] ', а затем объединить эти значения в изначально пустой хеш. –
Я решил дать ответ, который реализовал два подхода, которые я предложил выше. –