लोमुटो बनाम होरे
लोमुटो विभाजन बराबर कुंजियों को छांटने पर पीड़ित होते हैं, जबकि होरे विभाजन नहीं करता है।
दोनों विभाजन योजनाएं समान रूप से पीड़ित होती हैं जब मध्यिका से दूर धुरी का उपयोग किया जाता है।
विकार
का मापन क्विकॉर्ट के उद्देश्यों के लिए चुनने के लिए विकार का उपाय सरल है।
A: यादृच्छिक डेटा की तुलना में माध्यिका से कितनी दूर स्थाई धुरी है?
यदि आप लोमुटो विभाजन का उपयोग करने पर जोर देते हैं और यदि आप मानते हैं कि डुप्लिकेट मानों की अनुमति है तो आपको यादृच्छिकता के खिलाफ निम्नलिखित परीक्षण को जोड़ने की आवश्यकता है:
बी: यादृच्छिक की तुलना में कितने डुप्लिकेट तत्व हैं।
बेशक, यह मान लेना मूर्खतापूर्ण है कि आपके डेटा सेट में डुप्लिकेट मानों की अनुमति है और फिर भी लोमुटो विभाजन का मूल्यांकन करते हैं, इसलिए आपको या तो पहले से डुप्लिकेट को समाप्त करना चाहिए या होरे विभाजन पर स्विच करना चाहिए या मान लेना डुप्लिकेट दुर्लभ हैं।
दोनों उपाय आँकड़ों का उपयोग करने के लिए तुच्छ हैं।
हम पैथोलॉजिकल डेटा को नियंत्रित कर सकते हैं
। यादृच्छिकता से कोई अन्य विचलन क्विकॉर्ट्स के विश्लेषण के प्रयोजनों के लिए मायने नहीं रखेगा। जब तक धुरी माध्यिका के करीब होगी तब तक यह सभी डेटा पर अच्छा प्रदर्शन करेगा जो रोगात्मक नहीं है।
रैंडम से दूरी को क्विकॉर्ट-पैथोलॉजिकल होने के लिए वास्तव में महान होना होगा, इसलिए हम इस पर शासन कर सकते हैं।
वास्तविक कोड में कभी भी किसी निश्चित धुरी का उपयोग न
करें। ध्यान दें कि यदि आप एक वास्तविक धुरी के साथ वास्तविक कोड लिखते हैं *) (जो भी धुरी हो सकती है) आप स्वयं को सेवा हमले से इनकार कर रहे हैं, क्योंकि एक हमलावर एक सम्मिलित कर सकता है उस बिंदु पर पैथोलॉजिकल वैल्यू और इस तरह आपको हमेशा धुरी के रूप में एक यादृच्छिक तत्व चुनना चाहिए।
*) या एकाधिक पिवोट्स यदि आप x पिवोट्स में से सर्वश्रेष्ठ का चयन करते हैं।