最近我有一個求職面試,他們問我「谷歌地圖使用哪種方法找到兩個城市之間的最短路徑?」。我沒有回答這個問題,但我猜他們使用「最短路徑算法」尋找路徑,但採訪者說「不」。在那次採訪之後,我搜索了很多,但沒有找到任何方法。請告訴我,如果你有任何關於谷歌地圖如何找到兩個城市之間最短路徑的想法谷歌地圖使用算法/方法尋找兩座城市之間的路徑
回答
他問過你最短的路徑嗎?那麼你的權利。在這裏閱讀Dijkstra's Algorithm Does not generate Shortest Path?。但也許他意味着最快的路徑?
我回答了「Dijkstra算法」,但他對我說他不需要Bookish Solution。現在我很確定採訪是讓我感覺「不確定,愚蠢和便宜」。 – blacktornado
我猜它必須涉及'谷歌地圖'而不是普通的'圖理論解決方案'....與解釋地圖有關。我的2美分。 – Bill
我在接受'Dijkstra的算法不生成最短路徑「時有反對意見....這種算法生成給定源節點和目的節點之間的最短路徑。 – Bill
A *怎麼樣?它似乎適用於路徑查找。
碰巧我剛剛參加了一個關於它的討論。 Dijkstras算法對於谷歌來說太低效了。雖然複雜性n log n很好,但絕對時間很長。
Google使用Contraction Hierarchies的變體。它比Dijkstra更快,因爲網絡是預處理的。即使有更快的算法涉及預處理,CH提供了很大的靈活性。
- 1. 在谷歌靜態地圖上繪製兩個城市之間的路徑
- 2. 繪製道路的地圖城市之間有秩算法
- 3. Android - 兩座城市之間的距離
- 4. 尋找近鄰算法使用谷歌地圖座標
- 5. 如何將Dijkstra算法應用於谷歌地圖以找到兩點之間的最短路徑?
- 6. 找到所有城市的路徑的算法
- 7. 無法計算谷歌地圖中兩點之間的距離
- 8. Android谷歌地圖上的兩個geopoints之間的路徑
- 9. 谷歌地圖api城市或郵編
- 10. Android谷歌地圖在兩點之間繪製一條路徑
- 11. 谷歌地圖的Web Serivce API尋找基於座標城市(服務器端)
- 12. 谷歌的地方API爲Android找到城市
- 13. 谷歌地圖Google地圖兩點之間的路線
- 14. 谷歌地圖API:尋找最短路徑
- 15. 尋找最短路徑數的算法
- 16. 獲取城市名稱谷歌地圖路線經歷
- 17. 尋找谷歌地圖API
- 18. 谷歌地圖。找到最短路徑
- 19. 在城市應用最短路徑算法
- 20. JUnit:尋找@before方法和個人測試方法之間的通信路徑
- 21. 獲取城市周圍的城市與谷歌地點api給定半徑城市的列表
- 22. Rails尋找郵編10英里半徑內的城鎮。谷歌地圖API
- 23. 使用谷歌地圖構建路徑
- 24. 迷宮與路徑尋找算法
- 25. Dijkstra算法尋找最短路徑
- 26. 城市列表之間的計算距離算法
- 27. 使用谷歌地圖或openstreetmaps API繪製大城市區域
- 28. 如何使用谷歌地圖顯示城市限制API V3
- 29. 使用近似算法找到所有點之間的路徑
- 30. 谷歌地圖GDirections - 地圖上兩點之間的路線方向
你看看這個主題嗎? http://stackoverflow.com/questions/430142/what-algorithms-compute-directions-from-point-a-to-point-b-on-a-map –
對不起,我沒有看那個線程。 – blacktornado
你可以閱讀這個谷歌博客http://googleblog.blogspot.com.br/2007/11/road-to-better-path-finding.html和這個偉大的答案:http://stackoverflow.com/a/432854/2516160 – jean