У мене є колекція адресних координат (широта, довгота), збережена в таблиці бази даних як.
На основі поточного місцезнаходження користувача, наприклад користувачамає значення (55,65), має бути ефективний алгоритм прогнозування найближчого адреси, що відповідає поточному розташуванню користувача (55,65), наприклад, в цьому випадку найближча адреса є Address13. знаходження відстані для кожної точки не є ефективним рішенням, оскільки дані адреси можуть зрости до мільйонів.
Відповіді:
1 для відповіді № 1Найкраще зробити так, щоб на вашому наборі даних був реалізований якийсь мінімальний алгоритм Spanning Tree, а після додавання даних додайте адреси до MST. O (ElogV)
Тоді ви зможете шукати кожний список суміжності вузлів, щоб знайти найближчий вузол замість пошуку всієї таблиці. O (E)
Або напишіть жадібний алгоритм, який шукає графік. Дайте їй точку і радіус, з якого слід звернути увагу, тоді він не шукає точок, які знаходяться в радіусі.