2011-08-19 14 views
14

पर आधारित निकटतम स्थान की गणना करने के लिए एल्गोरिदम वर्तमान में वर्तमान में ज्ञात स्थान के निकटतम ज्ञात स्थान की गणना करने के लिए मैं एक एल्गोरिदम विकसित करने की कोशिश कर रहा हूं।अक्षांश और अक्षांश

मेरे पास 100 ज्ञात स्थानों (जिसका अर्थ है कि मेरे पास लंबे और अक्षांश दोनों हैं) की एक सूची है। इन 100 में से मैं एक स्थान चुनता हूं, और उस स्थान को चुनने के बाद मैं एक सूची दिखाना चाहता हूं जिसमें 8 निकटतम ज्ञात स्थान हैं।

इसका संभावित समाधान कैसे होगा?

संपादित

मैं कैसे दूरी की गणना करने के लिए नहीं देख रहा हूँ। मैं यह जानना चाहता हूं कि कौन से ज्ञात स्थान वर्तमान स्थान के सबसे नज़दीकी हैं।

उदाहरण:

कहो सूची फिल्म थिएटर के 100 स्थानों में शामिल है। मैं थियेटर 5 में हूं, और मैं यह जानना चाहता हूं कि सूची में कौन से अन्य मूवी थियेटर पास में हैं। दूरी नहीं, लेकिन उनका स्थान।

+0

स्थान के आधार पर आपका मतलब लैट/लॉन है? – ScruffyDuck

उत्तर

16

Distance Matrix API है। यह एपीआई आपको कुछ दिए गए पदों के बीच दूरी की गणना करने की अनुमति देता है।

आप एक haversine formula

+0

लिंक के लिए धन्यवाद, बाद में आसान हो सकता है, लेकिन अभी मैं दूरी की गणना करने के लिए नहीं देख रहा हूं, मैं यह खोज रहा हूं कि कौन सा स्थान वर्तमान के सबसे नज़दीक है। ज्योतिष मैं फिल्म थिएटर 'माई थिएटर' में हूं और मुझे यह जानने में दिलचस्पी है कि अन्य सिनेमाघरों के पास क्या है। उनके लिए दूरी नहीं, बल्कि उनके स्थान। – diceler

+0

लेकिन यह अभी भी आपके लिए एक समाधान है;) आपको अपना 'मेरा रंगमंच' बिंदु और 100 अन्य सभी स्थानों को प्राप्त करना होगा। फिर सभी 100 दूरी की गणना करें और सबसे छोटा चुनें। निकटतम बिंदु (सबसे छोटा डिस्टैंक) ढूंढने के लिए आपको सभी दूरीों को जानना होगा। – hsz

+1

किसी बिंदु पर आपको यह तय करना होगा कि _distance_ वर्तमान स्थान से x तक आपकी दहलीज से परे है ... – PLane

1

1 विचार के साथ अपने स्वयं के द्वारा भी यह कर सकते हैं: यदि आपका "100 ज्ञात स्थानों" ज्यादातर एक ही रहते हैं, तो आप छोटे समूहों के लिए जाना जाता स्थानों विभाजन और संरचना को बनाए रखने सकता है। फिर बस निकटतम समूह के साथ खेलते हैं।

More mathematical approaches here

+0

सुझाव के लिए धन्यवाद। मैं छोटे समूह बनाउंगा और प्रारंभिक निकटतम स्थान की गणना करने के लिए प्रति समूह एक स्थान का उपयोग करूंगा। – netsmertia

संबंधित मुद्दे