विभिन्न आयामों और सामग्रियों के साथ सरणियों पर बेंचमार्क 14 सॉर्टिंग एल्गोरिदम

यह लेख PHP में लिखे एल्गोरिदम को छाँटने के मानदंड पर केंद्रित होगा।

कुल 14 एल्गोरिदम प्रस्तुत किए गए हैं:



एल्गोरिदम के बारे में अधिक
QuickSort - त्वरित सॉर्ट *
काउंटशॉर्ट - गिनती के आधार पर क्रमबद्ध करें *
combSort - कंघी क्रमबद्ध करें *
हीपसॉर्ट - हीप क्रमबद्ध करें *
mergeSort - मर्ज सॉर्ट *
ShellSort - शैल सॉर्ट *
चयन - चयन द्वारा क्रमबद्ध करें *
सम्मिलित करें - आवेषण द्वारा क्रमबद्ध करें *
gnomeSort - बौने सॉर्ट *
संयुक्त बबलसॉर्ट - संशोधित बबल सॉर्ट
कॉकटेलसॉर्ट - शेकर सॉर्ट *
बबलोर्ट - बबल सॉर्ट *
oddEvenSort - सम-विषम सॉर्ट
बबलसोर्टविथफ्लैग - बबल क्रमबद्ध झंडे के साथ



एल्गोरिदम को वर्णानुक्रम में व्यवस्थित नहीं किया गया है, लेकिन 8 हजार तत्वों की एक सरणी को सॉर्ट करते समय उनकी गति को कम करने के क्रम में।

छँटाई में प्रयुक्त सरणियों के प्रस्तुत आयाम:



इसके अलावा, प्रत्येक माप सरणी के एक अलग भरने के साथ किया गया था, छँटाई समारोह में पारित:



प्रत्येक माप तीन बार और अंकगणितीय माध्य लिया गया था।

एक हजार तत्वों तक पहुंच जाता है


सभी श्रेणीकरण कार्य इस श्रेणी में शामिल हैं।




आकार में 30 हजार तत्वों तक पहुंचता है


इस बार, 5 सबसे तेज़ एल्गोरिदम शामिल हैं: छँटाई गिनती, त्वरित छँटाई, कंघी छँटाई, ढेर छँटाई और मर्ज छँटाई।




आकार में 200 हजार तत्वों तक पहुंचता है


इस बार, सभी समान 5 एल्गोरिदम शामिल हैं: गिनती छँटाई, त्वरित छँटाई, कंघी छँटाई, ढेर छँटाई और विलय छँटाई।




2,000,000 तत्वों तक पहुंचता है


दो एल्गोरिदम ने 2 मिलियन तत्वों के लिए अंतिम दौड़ में भाग लिया: छंटाई और त्वरित छंटनी।




निष्कर्ष


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

सभी एल्गोरिदम के स्रोत कोड + मेरे परिणाम: drive.google.com/file/d/0B5FrhsQAeZwCUmx0dzFjeVdra0E/edit?usp=sharing

Source: https://habr.com/ru/post/In221807/


All Articles