Re[6]: Хэш для диапазона дат
От: Sinclair Россия https://github.com/evilguest/
Дата: 23.03.17 13:20
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>Здравствуйте, Sinclair, Вы писали:



S>>Допустим, нам известны диапазоны d1 и d2, а также их хеши h1 и h2.

S>>Покажите код функции, которая определяет, пересекаются ли диапазоны:
S>>
S>>public static boolean AreIntersecting(DateRange d1, DateRange d2, int h1, int h2)
S>>{
S>>  if(SomeFunction(h1, h2))
S>>  {  /// вот тут мы типа ускоряем проверку благодаря использованию хешей
S>>     return ???
S>>  } else // идём по "медленной" ветке 
S>>     return (d1.Start <= d2.End)  && (d1.End >= d2.Start)
S>>}
S>>


S> Нам нужен 1 дата. Как правило идут набор дат d1, d2, d3, ... dn

Вы решаете какую-то не ту задачу. Обычно под диапазоном понимают интервал, т.е. пара дат — начало и конец.
Но даже если принять ваше понимание задачи — покажите, как предложенная вами хеш-функция её решает. Рассказывать про бинарный поиск не надо — покажите, как использовать ваш хеш.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.