2016-07-10 6 views
0

사용자가 만든 각 체크마다 GPS 좌표를 등록 할 앱이 있습니다. 사용자가 체크인을 위해 다시 체크인하면 속도가 절약되는 옵션으로 체크인 한 가장 가까운 장소를 표시합니다.계산 속도를 높이기 위해 GPS 포인트를 결합하십시오.

각 체크인은 사용자의 현재 위치를 저장합니다. 첫 번째 또는 100 번째 체크인.

얼마 후 우리는 매번 확인해야 할 커다란 좌표 목록을 가지고 있습니다.

어떻게이 정보를 축소 할 수 있습니까? 위도와 경도의 거대한 목록을 하나 이상의 다각형으로 바꾸고 싶기 때문에 거리 계산 속도를 높일 수 있습니다.

# So this 
1:0 100:200 2:0 2:2 2:1 1:1 2:1 0:1 

# Could become this 
100:200 1:1 

# Or this 
100:200,100:200 0:0,2:2 
+0

가장 가까운 이웃 검색 문제라고합니다. 더 빠른 알고리즘을 언급하는 [Wiki 기사] (https://en.wikipedia.org/wiki/Nearest_neighbor_search)를 살펴볼 수 있습니다. [R-Tree] (https://en.wikipedia.org/wiki/R-tree)를 사용하여 공간을 분할하는 것이 최선의 방법이라고 생각됩니다. – Kametrixom

+0

@Kametrixom이 의견을 답변으로 추가하여 동의하겠습니다. R-Tree의 제안은 내가 필요한 것에 잘 작동 할 것입니다. 고맙습니다. –

+0

실제 답변으로는 생각하지 않았습니다. :) – Kametrixom

답변

1

가장 가까운 이웃 검색 문제라고합니다. 빠른 알고리즘을 언급 한 Wiki article을 살펴볼 수 있습니다. R-Tree으로 공간을 분할하는 것이 가장 좋은 방법입니다.

관련 문제