Близкие точки

Тема в разделе "Как сделать...", создана пользователем vanderv, 4 май 2012.

  1. vanderv

    vanderv

    Регистр.:
    30 май 2009
    Сообщения:
    267
    Симпатии:
    12
    есть 2 массива координат:
    array(
    0=>array(x,y),
    1=>array(x1,y1)
    ....
    )
    Массив можно засунуть в бд, если это чем-то поможет.
    Надо из этого массива найти 2 точки которые будут ближе всего друг к другу.
    Вопрос как??? у меня мозг заворачивается уже от мыслей. Направьте на путь истинный!
     
  2. fpinger

    fpinger

    Регистр.:
    11 май 2007
    Сообщения:
    253
    Симпатии:
    58
    Расстояние между двумя точками = [​IMG]
    А далее перебор.
     
  3. vanderv

    vanderv

    Регистр.:
    30 май 2009
    Сообщения:
    267
    Симпатии:
    12
    Да пока так и сделал...
     
  4. UrSergeev

    UrSergeev Постоялец

    Регистр.:
    24 май 2012
    Сообщения:
    109
    Симпатии:
    8
    Еще можно, при заносе точки в массив, БД сортировать по расстоянию от центра системы координат, и из этого выбирать с шагом в одну и другую сторону, что даст возможность сократить время поиска при большом массиве - не забывать о + и -