2016-08-25 11 views
0

我有很多地方數據(旅遊景點)存儲在數據庫中。每個地方都有協調信息,如經度和緯度。當我隨機選擇一條路線(例如:從紐約某處到波士頓某處)時,我怎麼能找到沿途10個最近的地方?我想這是相對於地理算法。我試圖找到一種方法來減少總計算時間並節省手機電池。謝謝你的任何建議!找到靠近路線的前n個地方

+0

向我們展示一些努力以及迄今爲止嘗試的內容。 –

+0

@QualityCatalyst我剛開始構建應用程序,並意識到這個問題。我還是個學生,以前沒有地圖開發經驗。我能出來的唯一解決方案可能是二維樹。這就是爲什麼我希望有人能讓我看到一些方向。 – user2001613

回答

1

一種方法是:

  • 考慮地圖是網格例如1公里x1km箱
  • 情節路線,看看它進入其中的這些網格框。
  • 每個箱子,發現這是不是如果你搜索你的數據庫我的最小/最大經度/ latidtude位置計算昂貴的盒子的地方/地標是格柵框開始/結束

要顯示頂部N,可以計算這些位置子集的最短距離,而不是整個數據集。

+0

非常感謝。很詳細的解決方案我會盡我所能來實現它。同時我會等待幾天,然後才能投票選出最佳答案。謝謝! – user2001613

+0

乾杯,隨時upvote,如果你喜歡它:) – numX

+0

我會,一旦我有15名或更多的聲譽。乾杯:) – user2001613