Показать сообщение отдельно
Старый 11.12.2007, 20:38   #1
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Нахождение точки удовл. правилу Делоне

Дано: массив точек представленых в виде пары координат Х и Y на плоскости. И отрезок соединяющий 2е из точек массива образуя начальное ребро.

Найти такую точку массива чтобы она удовлетворяла следущему правилу:
Окружность описаная вокруг трёх точек(2х точек ребра и искомой) должна быть минимально возможного радиуса из всех возможных вариантов в это массиве.

Решение "влоб" - перебор всех точек (кроме тех что соединены отрезком) и вычисление для каждой тройки точек (2е концы отрезка и текущая выбраная) радиуса описаной окружности. И селекция полученых результатов для выбора наименьшего...

Оценка производительности: O(N-2) в худшем случае и O((N-2)/2) в среднем.

Вопрос как бы это дело ускорить...непребигая к полному перебору...

Возможно есть способы предварительной сортировки...
__________________
(Offline)
 
Ответить с цитированием