Сопряженный поиск и организация данных для него?

REMO

Guest
Сопряженный поиск и организация данных для него?

Столкнулся с проблемой. Необходимо сделать поиск по москвоским станциям метро. Причем, если к примеру ищут профсоюзная, то чтобы вместе с ней находили еще и рядом находящиеся станции.

Возникает логичный вопрос, как так организовать хранение данных, чтобы все это осуществить наиболее наглядно.

Сделать отдельную таблицу, куда засунуть пару id станции метро <--> id близлежащего метро, и таким образом искать...

Может кто еще какие идеи подскажет?

Thnx
 

.des.

Поставил пиво кому надо ;-)
Введите координаты для каждой станции метро. Не обязательно реальные, но главное чтобы взаимное расположение и соотношение расстояний сохранилось.
Тогда сможете делать выборку - все точки (станции метро) в радиусе от заданной.
 

HEm

Сетевой бобер
.des.
неверный ответ, в центре станций много и в радиусе может оказаться станция, до которой надо будет сделать несколько пересадок

а может я неправильно понял
REMO
близлежащие - это те, до которых по поверхности пешком идти недалеко или те, до которых ехать одну остановку без пересадок?
 

.des.

Поставил пиво кому надо ;-)
HEm
.des. неверный ответ
Думаю об этом решать автору топика.

близлежащие - это те, до которых по поверхности пешком идти недалеко или те, до которых ехать одну остановку без пересадок?
В любом случае мне не непонятно, почему станция до которой надо совершить больше пересадок не подходит под одну из ближайших?

-~{}~ 12.05.04 10:11:

близлежащие - это те, до которых по поверхности пешком идти недалеко или те, до которых ехать одну остановку без пересадок?
Стандартное представление графа.
Представь схему станций ввиде списка смежных вершин.
сможешь находить все смежные станции (ну и по аналогии смежные к смежным).

Короче решений масса :)
 

HEm

Сетевой бобер
des понимать вопрос в данной постановке можно по-разному, но ты почему-то упираешься только в свой вариант

REMO
по вопросу можно подсказать такую структуру

таблица информации о станциях
stations
id name vetka

таблица связей станций между собой под землей
logicrelationships
id stat1id stat2id type
где type - SET(0,1)
1 - если станция на расстоянии одной поездки без остановки
0 - если станция пересадочная (несколько станций в одной точке)
варианты с количеством промежуточных остановок больше нуля не рассматриваются

phisicrelationships
id stat1id stat2id distance angle
физические расстояния между станциями

-~{}~ 12.05.04 11:16:

.des.
насчет графов я конечно все уже забыл, как там представлена связь нескольких узлов которые в одной точке?
 

neko

tеam neko
я могу ошибаться, но кажется автор вопроса что-то недоговаривает ;-)

искать станцию метро только чтобы узнать какие находятся рядом? тогда вообще неважно как это делать

мб нужно еще какие-нибудь схемки генерировать? тогда граф
 

REMO

Guest
:) Спасибо парни, но все гораздо проще, чем вы тут уже напредлагали...

Допустим пользователь выбирает станцию "Пушкинская". Нужно показать на каких к ней близлежаших станциях распоожены еще магазины. Пересадки, не пересадки это не важно. Близлежащие понимаются как находящиеся в радиусе 10 км к примеру....

В общем вариант предложенный .des. имхо наиболее подходит. Действительно разбить карту метро на координаты и каждой станции ввести по координате...

Всем спасибо за творческий полет мысли :)
 
Сверху