Re[5]: Queryable interval container?
От: investigator Россия  
Дата: 01.09.11 10:58
Оценка:
Здравствуйте, Cyberax, Вы писали:

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


C>>>Нельзя эффективно искать интервалы по близости к данной точке. Для этого нужно хранить индексы по началу и концу интервала, индексы по одному параметру пллохо подходят.

I>>А что если просто складывать точки-концы в NavigableMap? Каждая такая точка может, в свою очередь, ссылаться на свой интервал, содержать дополнительную информацию, например, начало это или конец интервала...
C>Проблема в том, что нужно искать не только по одной точке.

C>К примеру, такой случай:

C>
C>====[-------]===[--x---------------------------]===========
C>

C>Если искать по концевой точке, то ближайшим интервалом к точке "x" будет первый интервал. Что в корне неверно, так как точка лежит во втором.

Почему первый?

Имеем:
====A1-------A2===B1--x---------------------------B2===========

Все точки — A1, A2, B1 и B2 лежат в мапе. Далее по x выдергиваем ближайщую слева или справа. В нашем случае будет B1. Получаем второй интервал.

C>Я пока соорудил монстра из двух NavigableMap, но это мне активно не нравится.


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