Re[6]: [Request for help] CompositeRange<T>
От: Sinix  
Дата: 30.09.16 21:37
Оценка:
Здравствуйте, AndrewVK, Вы писали:

S>>Для получения всех взаимопересечений поддиапазонов есть GetIntersections(), если не оно — подумаю позже (вечер, влом уже).

AVK>Посмотри по последней ссылке, там более полное объяснение требований.
Я посмотрел — оно и есть по-моему.
Результаты вот тут.

AVK>Ну и мой алгоритм (он основан на том что Коля предложил
Автор: Кодт
Дата: 23.02.14
) вроде бы покороче, не?

Я в него пока не вьехал (и не пытался мозг уже всё), но по-моему он не будет работать с произвольными типами границ.

Ну и твой O(n^2) (если я нигде не протупил) против моего варианта (O(n*log(n)) и +log(n) по памяти) тож как-то не ок. Но это уже десятый-сотый вопрос, сначала надо с поведением определиться, а затем уже код ускорять.

А то некоторые требования (например, разрешать кучу одинаковых диапазонов с разными ключами и не учитывать порядок ключей при сравнении) здорово по производительности бьют и ничего с этим не сделаешь.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.