मैं द्वि-आयामी बिंदुओं के सेट के लिए हैशकोड की गणना करने का सबसे अच्छा तरीका ढूंढ रहा हूं (ताकि मैं पॉशगन्स को हैशटेबल में स्टोर कर सकूं)।अंक के सेट के लिए हैशकोड की गणना करने का सबसे अच्छा तरीका क्या है?
ऐसा करने के कुछ स्पष्ट तरीके हैं, जैसे स्ट्रिंग और उसके हैशकोड में सभी बिंदु निर्देशांक को संयोजित करना, लेकिन यह बहुत धीमा होगा।
गति/टकराव स्पेक्ट्रम के दूसरे छोर पर, उदाहरण के लिए मैं सभी निर्देशांकों को जोड़ सकता हूं, जिसके परिणामस्वरूप बहुत तेज़ कोड होगा, लेकिन कई टकराव भी होंगे।
अंक के सेट के लिए हैशकोड की गणना करने का सबसे अच्छा तरीका क्या है?
क्या निर्देशांक पूर्णांक हैं (वास्तविक निर्देशांक बनाम) इष्टतम समाधान अलग है?
संपादित करें: मैं .NET का उपयोग कर रहा हूं इसलिए हैशकोड 32 बिट लंबा होना चाहिए।
अंतरिक्ष में आपके बहुभुज कैसे ओवरलैप हो सकते हैं इस पर कोई प्रतिबंध? – Anon
एनन: वे ओवरलैप कर सकते हैं; लेकिन आप मुझे उत्सुक बनाते हैं: इससे क्या अंतर आएगा? – Brann
अपनी प्रतिक्रिया टिप्पणी देखने से पहले इसके बारे में मेरा उत्तर पोस्ट किया। टिप्पणी के माध्यम से पूछ रहा था क्योंकि मैंने सोचा था कि आप शायद ओवरलैप की अनुमति दे रहे थे। – Anon