Algorithme pour calculer l'emplacement le plus proche en fonction de la longitude & amp; latitude
Je suis en train d'essayer de développer un algorithme pour calculer les emplacements connus sont le plus proche à l'actuel emplacement connu.
J'ai une liste de 100 sites connus (ce qui signifie que j'ai à la fois long et latitude). Sur ces 100 je en choisir un emplacement, et après la cueillette de cet endroit je veux une liste de montrer à-dire le 8 le plus proche des endroits connus à ce.
Comment une possible solution à cela?
Modifier
Je ne suis pas à la recherche de comment calculer les distances. Je suis à la recherche de la manière de calculer les emplacements connus se trouve plus proche de l'emplacement actuel.
Exemple:
Dire la liste contient 100 emplacements des salles de cinéma. Je suis à la salle 5, et je veux savoir ce que les autres salles de cinéma dans la liste se trouve à proximité. Pas la distance, mais leur emplacement.
source d'informationauteur | 2011-08-19
Vous devez vous connecter pour publier un commentaire.
Il y a un Matrice de Distance de l'API. Cette API vous permet de calculer les distances entre certaines positions.
Vous pouvez le faire aussi par votre propre avec un
haversine formule
1ère idée: Si votre "100 emplacements connus" restent essentiellement les mêmes, vous pouvez partitionner les endroits connus pour petits groupes et de maintenir la structure. Ensuite, il suffit de jouer avec le groupe le plus proche.
Plusieurs approches mathématiques ici
Le lien ci-dessous peuvent vous être utiles.
http://www.scribd.com/doc/2569355/Geo-Distance-Search-with-MySQL
Essayer de mettre en œuvre des k-d tree algorithme de recherche du plus Proche voisin.