क्विकसॉर्ट को "क्विकसॉर्ट" क्यों कहा जाता है?


9

इस सवाल का बिंदु किसी अन्य छँटाई एल्गोरिथ्म पर इस के गुण पर बहस नहीं करना है - निश्चित रूप से कई अन्य प्रश्न हैं जो ऐसा करते हैं। यह सवाल नाम के बारे में है। क्विकसॉर्ट को "क्विकसॉर्ट" क्यों कहा जाता है? ज़रूर, यह "त्वरित" है, ज्यादातर समय, लेकिन हमेशा नहीं। ओ (एन ^ 2) को पतित करने की संभावना सर्वविदित है। इस समस्या को कम करने वाली क्विकसॉर्ट में विभिन्न संशोधन हैं, लेकिन जो सबसे खराब स्थिति को एक गारंटी ओ (एन लॉग एन) के लिए सबसे नीचे लाते हैं, उन्हें आमतौर पर क्विकॉर्ट नहीं कहा जाता है। (उदा। इंट्रोसॉर्ट)।

मुझे आश्चर्य है कि सभी प्रसिद्ध सॉर्टिंग एल्गोरिदम का क्यों, यह "त्वरित" नाम का एकमात्र योग्य है, जो बताता है कि एल्गोरिथ्म कैसे काम करता है, लेकिन यह कितनी तेजी से (आमतौर पर) होता है। मर्जेसर्ट कहा जाता है क्योंकि यह डेटा को मर्ज करता है। हीप्सॉर्ट को कहा जाता है क्योंकि यह एक ढेर का उपयोग करता है। Introsort को इसका नाम "Introspective" से मिला है, क्योंकि यह Quicksort से Heathort पर कब स्विच करना है, यह तय करने के लिए अपने स्वयं के प्रदर्शन की निगरानी करता है। इसी तरह सभी धीमे लोगों के लिए - बुलबुले, प्रविष्टि प्रकार, चयन प्रकार, आदि। वे सभी का नाम है कि वे कैसे काम करते हैं। केवल एक और अपवाद जो मैं सोच सकता हूं, वह है "बोगोसॉर्ट", जो वास्तव में सिर्फ एक मजाक है जिसे कोई भी वास्तव में व्यवहार में उपयोग नहीं करता है। क्विकॉर्ट को कुछ अधिक वर्णनात्मक क्यों नहीं कहा जाता है, जैसे "विभाजन सॉर्ट" या "पिवट सॉर्ट", जो यह वास्तव में क्या करता है वर्णन? यह "यहां पहले मिल गया" का मामला भी नहीं है। क्विकॉर्ट से 15 साल पहले मर्जसॉर्ट विकसित किया गया था। (1945 और 1960 क्रमशः विकिपीडिया के अनुसार)

मुझे लगता है कि यह वास्तव में एक प्रोग्रामिंग की तुलना में इतिहास के प्रश्न का अधिक है। मैं बस उत्सुक हूं कि इसे नाम कैसे मिला - क्या यह सिर्फ अच्छा विपणन था?


1
Timsort, जो कि quicksort में सुधार है, यह काम करने के बाद नाम नहीं लेता है, बल्कि इसके आविष्कारक से है। Flashsort या introsort जैसे नाम आपको एल्गोरिथ्म के बारे में बहुत कुछ नहीं बताते हैं।
vartec

What's in a name? that which we call a rose By any other name would smell as sweet;वह या जैसे ही तेज हो। इसके अलावा, ओ (एन ^ 2) के पतित होने की संभावना कम होने की संभावना है, और एन लोगन एक एल्गोरिथ्म के लिए बहुत अच्छा है, इस तथ्य के बावजूद कि आज हमारे पास तेजी से एल्गोरिदम है। इसके अलावा, जब तक कुछ तेजी से आया, तब तक बहुत देर हो चुकी थी, सभी ने पहले से ही इसे क्विकॉर्ट कहा!
Ampt

1
@vartec Timsort वास्तव में Mergesort से लिया गया है, Quicksort से नहीं, लेकिन मैं सहमत हूँ, यह एक और अपवाद है। Introsort आपको संपूर्ण एल्गोरिथ्म नहीं देता है, लेकिन यह कम से कम कुछ का वर्णन करता है कि यह कैसे काम करता है - यह "आत्मनिरीक्षण" है। फ्लैशसॉर्ट मैं बहुत परिचित नहीं हूं, लेकिन मुझे लगता है कि यह कहा जाता है क्योंकि यह प्रत्येक तत्व को अपने सर्वश्रेष्ठ अनुमान में "चमकता" करता है जहां यह होना चाहिए?
डारेल हॉफमैन

1
@Ampt दरअसल, क्विकसॉर्ट के सबसे बुनियादी रूप में, ओ (एन ^ 2) केस आम मामले में काफी संभावना है जहां डेटा पहले से ही सॉर्ट किया गया है या लगभग ऐसा ही है। जाहिर है, बाद के घटनाक्रम जैसे कि मेडियन-ऑफ -3 या यादृच्छिक धुरी इसे और अधिक दुर्लभ बनाते हैं, लेकिन नाम अभी भी कार्यान्वयन के लिए उपयोग किया जाता है जिसमें ऐसे सुधारों की कमी है।
डारेल हॉफमैन

जाहिर है, यह क्विकेस्ट से बेहतर है?
जेएफओ

जवाबों:


13

1962 में एल्गोरिदम को छांटने पर शोध आज तक उतना उन्नत नहीं था और कंप्यूटर वैज्ञानिक टोनी होरे ने एक नया एल्गोरिथ्म पाया जो कि अन्य की तुलना में तेज था, इसलिए उन्होंने क्विकॉर्ट नामक एक पेपर प्रकाशित किया और जैसा कि कागज के शीर्षक से उद्धृत किया गया था।

सार का उद्धरण:

कंप्यूटर के रैंडम-एक्सेस स्टोर में छँटाई का एक नया तरीका दिया गया है। विधि बहुत अनुकूल रूप से गति में अन्य ज्ञात विधियों के साथ तुलना करती है, भंडारण की अर्थव्यवस्था में, और प्रोग्रामिंग की आसानी में। विधि के कुछ शोधन, जो आंतरिक छोरों के अनुकूलन में उपयोगी हो सकते हैं, कागज के दूसरे भाग में वर्णित हैं।


लिंक किए गए पीडीएफ में पृष्ठ 11 पर फुटनोट से पता चलता है कि 1961 में प्रकाशित क्विकॉर्ट पर पहले का एक पेपर था। उस पेपर का जिक्र पेपर के अंत में संदर्भ खंड में भी किया गया है।
FrustratedWithFormsDesigner

1961, अल्जोरिथ्म 64: क्विकॉर्टॉर्ट
पीटर बी

मुझे लगता है कि यह सही उत्तर के करीब है क्योंकि मुझे मिलने की संभावना है। यह बताता है कि किसने इसका नाम रखा है, लेकिन यह नहीं कि यह अभी भी उस नाम का उपयोग क्यों कर रहा है, जब हाल ही में और संभावित रूप से तेज विकल्प मौजूद हैं। अच्छा पढ़ा - यह देखना दिलचस्प है कि 60 के दशक में पीछे से कितना सामान अभी भी आधुनिक तकनीक पर लागू होता है।
डारेल हॉफमैन

3
@DarrelHoffman नाम क्यों बदलेगा? किस बिंदु पर एल्गोरिथ्म कॉलिंग की खामियां क्विकॉर्टर्ट को हर किसी को इसे विभाजन या किसी भी तरह से कॉल करने की कोशिश करने की लागत से आगे निकल जाएगी?
मुकदमा

0

मेरा मानना ​​है कि यह मूल रूप से आविष्कारक के बाद होरे सॉर्ट कहलाता था, लेकिन होरे के अंग्रेजी में वेश्या के करीब होने की थोड़ी सी आवाज के कारण नाम काफी जल्दी बदल गया। जैसा कि उन्होंने कुछ और के बजाय "त्वरित" चुना, मुझे यकीन नहीं है।


-1

मेरा मानना ​​है कि क्योंकि यह उस समय का आविष्कार किया गया था, यह सभी की तुलना में बहुत तेज था (या, बल्कि, सबसे, गति भी डेटा के प्रकार पर बहुत निर्भर करती है और कुछ मामलों में अन्य एल्गोरिथ्म क्विकर की तुलना में बहुत तेज हो जाते हैं) वहाँ एल्गोरिदम।

तो हाँ, यह ऐतिहासिक है (मुझे ठीक से उस इतिहास का पता नहीं है, हालाँकि ...)

लेकिन मैं मानता हूं कि इसके नाम में एल्गोरिथ्म का संकेत होना चाहिए ...

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.