2016-09-01 7 views
7

एक दृश्यकिट गेम में इलाके का प्रतिनिधित्व करने के लिए, मेरे पास पदानुक्रम में लगभग 20k एससीएन नोड्स हैं जो एक ऑक्टेट या क्वाड्री के समान हैं। यह पेड़ संतुलित नहीं है - कुछ शाखाओं के पास दूसरों की तुलना में कहीं अधिक महान (* एन) -ग्रेन्ड्रिल्डर है।दृश्य: एससीएनएनओड ऑक्टेट्स/क्वाड्रिस का प्रदर्शन रूट स्तर

भौतिक विज्ञान, प्रतिपादन, नोड्स को जोड़ने/हटाने के लिए व्यक्तिगत एससीएन नोड्स पर प्राप्त करने के लिए कितना अतिरिक्त समय है, अगर वे रूट स्तर पर सभी फ्लैट थे? क्या इसे पेड़ की पूरी ऊंचाई को फिर से चलाने या यादृच्छिक पहुंच करने के लिए बहुत सारे अतिरिक्त काम करना पड़ता है, या यह सिर्फ एक महत्वपूर्ण ओवरहेड नहीं है? (शायद यह पहले से ही नोड्स को पहले से संरचित करने के लिए पर्याप्त चालाक है?)

मैं नहीं पूछ रहा हूं कि ग्राफिक्स इंजन सैद्धांतिक रूप से इसे कैसे संभाल सकता है। मैं पूछ रहा हूं कि वास्तव में क्या दृश्य करता है।

संपादित करें: बस अगर यह लोगों को इसका उत्तर देने से रोक रहा है ... मुझे सटीक संख्या की आवश्यकता नहीं है कि सीनकेट कितना समय लेता है, जाहिर है कि यह डिवाइस-निर्भर है। मैं सिर्फ यह जानना चाहता हूं कि यह समय का एक महत्वपूर्ण अनुपात है या नहीं। क्या किसी को दोनों दृष्टिकोणों की तुलना करने और तुलना करने, या एक से दूसरी तरफ स्विच करने का अनुभव था और यह देखते हुए कि कोई महत्वपूर्ण अंतर था या नहीं?

आपकी मदद के लिए धन्यवाद।

+0

ऐसा लगता है कि इस सवाल ने बाउंटी शिकारी को हद तक हरा दिया, लेकिन अगर भविष्य से कोई भी अच्छा प्रतिभा चुनौती लेने के लिए पर्याप्त वीरतापूर्ण होगा, तो हम में से बहुत से अभी भी एक जवाब पसंद करेंगे। – DenverCoder9

+0

अद्यतन: ट्रिपल 7 के उत्तर के तहत टिप्पणी देखें। – DenverCoder9

उत्तर

1

मैं अपने दृश्य के रूप में नोड्स की गंभीर राशि पैक करने के लिए शुरू कर रहा है, लेकिन यहां इस में देख रहा हूँ मेरी ले रहा है:

जब आप node.childNode फोन (withName: स्ट्रिंग, रिकर्सिवली: सच है), इस का मतलब है कार्यान्वयन संतुलित या गैर संतुलित पेड़ के कुछ रूपों का उपयोग करता है, एक बाइनरी पेड़, एबी पेड़ बी + पेड़ के बीच अपना चयन करें (यदि किसी नोड में एक निश्चित थ्रेसहोल्ड से अधिक बच्चे नोड्स होते हैं), तो आप ज्यादातर लॉग के साथ समाप्त हो जाएंगे। n | जटिलता इस बात पर निर्भर करती है कि आप डिलीट डालना चाहते हैं या पेड़ की संरचना खोजना चाहते हैं। एवीएल पेड़ आम तौर पर पदानुक्रम के ऊपर सबसे अधिक इस्तेमाल नोड्स रखता है ताकि आपको कम गणना मिल सके।

बस क्वाड पेड़ या आर पेड़ संरचनाओं को देखते हुए, उनके पास शायद लॉग | n | जटिलता क्योंकि हम जड़ चतुर्भुज के पुनरावृत्त उप चतुर्भुज में जा रहे हैं।

यह जानना अच्छा होगा कि बच्चे नोड्स के संदर्भ में आपको किस प्रकार की वास्तविक संरचना मिलती है, यह देखने के लिए कि सबसे अच्छी रणनीति क्या है।

एक तरफ ध्यान दें, आपके इलाके में 20 के अंत तक क्या संकेत मिलता है? क्या आप कुछ मोर्फ़िंग करने के लिए अपने इलाके में एक बेरियर पॉइंट या वर्टेक्स को नोड संलग्न कर रहे हैं?

+0

तो ... मैंने कुछ परीक्षण और प्रोफाइलिंग किया और संरचना को चपटा। वृक्ष की ऊंचाई को बदल देता है, क्योंकि एक सामान्य नोड तक पहुंचने के लिए एससीएनएनओड्स की संख्या में कोई फर्क नहीं पड़ता है, लेकिन गति की वास्तविक संख्या गति में एक बड़ा कारक है, और इसे फ़्लैट करके आप बहुत से छुटकारा पा सकते हैं अदृश्य माता-पिता नोड्स जिनकी एकमात्र नौकरी बच्चों को शामिल करना था। वैसे भी, जवाब देने के लिए धन्यवाद, उत्तर में सबसे अच्छे प्रयास के लिए एक उत्थान है :) – DenverCoder9

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