![]() |
Как обойтись без перебора?
Всем привет. У меня вопрос к прикладным математикам.
Есть два набора точек. Нужно найти пару точек (по точке из каждого набора), декартово растояние между которыми минимально. Я сколько не думаю, у меня всё сводится к перебору. Но неужели нет какого-то более "продвинутого" решения? |
Продвинутые решения бывают на листе бумаги, написанные авторучкой, а в программировании (хотя, может и в голове тоже) - только перебор.
|
что ещё известно про точки (может фигуры там выпуклые задают)? если больше ничего, то только перебор NxM вариантов
|
совсем без перебора не обойтись, но если точек много, а природа природа этих наборов такая, что они неравномерно распределены в пространстве - можно придумать ряд оптимизаций, которые исключат из перебора большинство точек. Советую полистать книжки по трёхмерной графике - там очень востребованы подобные оптимизации по исключению из расчётов невидимых фигур, граней и т.п.
|
Время: 15:40. |
Время: 15:40.
© OSzone.net 2001-