/ / Знайти найближчу точку відповідають заданій точці в діаграмі розсіяння - алгоритм, математика, геометрія, лінійно-алгебра, граф-алгоритм

Знайти найближчий пункт відповідає заданій точці в діаграмі розсіювання - алгоритм, математика, геометрія, лінійна алгебра, граф-алгоритм

введіть опис зображення тут

У мене є колекція адресних координат (широта, довгота), збережена в таблиці бази даних як.

введіть опис зображення тут

На основі поточного місцезнаходження користувача, наприклад користувачамає значення (55,65), має бути ефективний алгоритм прогнозування найближчого адреси, що відповідає поточному розташуванню користувача (55,65), наприклад, в цьому випадку найближча адреса є Address13. знаходження відстані для кожної точки не є ефективним рішенням, оскільки дані адреси можуть зрости до мільйонів.

Відповіді:

1 для відповіді № 1

Найкраще зробити так, щоб на вашому наборі даних був реалізований якийсь мінімальний алгоритм Spanning Tree, а після додавання даних додайте адреси до MST. O (ElogV)

Тоді ви зможете шукати кожний список суміжності вузлів, щоб знайти найближчий вузол замість пошуку всієї таблиці. O (E)

Або напишіть жадібний алгоритм, який шукає графік. Дайте їй точку і радіус, з якого слід звернути увагу, тоді він не шукає точок, які знаходяться в радіусі.