एल्गोरिदम के रूप में वे क्रमबद्ध हैं
छंटनी एक व्यवस्था हैवस्तुओं को एक निश्चित क्रम में, उदाहरण के लिए, अवरोही क्रम या आरोही क्रम में। आम तौर पर, तत्वों का क्रम डेटा के साथ सबसे आम हेरफेर है, जो भविष्य में सही जानकारी को ढूंढना आसान बनाता है। यह काफी हद तक विभिन्न डेटाबेस प्रबंधन प्रणालियों पर लागू होता है। सॉर्टिंग एल्गोरिदम वर्तमान में बड़ी संख्या में मौजूद हैं, हालांकि उनके पास समान विशेषताएं हैं (चरण): अनुक्रमों का आदेश मिलने तक जोड़े में तत्वों की तुलना और क्रमपरिवर्तन।
सॉर्टिंग एल्गोरिदम को वर्गीकृत किया जा सकता हैआंतरिक और बाहरी। पहले इस तथ्य से विशेषता है कि सभी क्रमबद्ध तत्व रैम में रखे गए हैं और उनमें से किसी के लिए यादृच्छिक पहुंच प्राप्त करना संभव है। उत्तरार्द्ध बाहरी स्मृति (फ़ाइलों में) में स्थित डेटा के साथ काम कर सकते हैं। ऐसे तत्वों तक पहुंच अनुक्रमिक रूप से लागू की जा सकती है।
जब वे होते हैं तो आइटम को सॉर्ट करना अधिक सुविधाजनक होता हैएक आयामी सरणी की संरचना में। इस तरह के प्रत्येक तत्व में एक सीरियल नंबर होता है, और सरणी तत्व को इंडेक्स द्वारा एक्सेस किया जाता है। इस मामले में सॉर्टिंग एल्गोरिदम उपयोग के लिए सबसे सरल और समझने योग्य साबित होता है।
के लिए एक आंतरिक सॉर्टिंग एल्गोरिदम पर विचार करेंबुलबुला विधि और इसके बेहतर संस्करण से उतरते हुए, सॉर्टिंग के लिए बिताए गए समय में भिन्न होता है। बबल विधि द्वारा छंटनी वास्तव में कई नाम हैं। इसे रैखिक सॉर्टिंग विधि या पसंद के अनुसार एक्सचेंज-सॉर्टिंग विधि भी कहा जाता है। लेकिन, हालांकि, यह एक नाम नहीं है। एक बुलबुला क्यों? एक बार पानी में, हवा बुलबुला तैर जाएगा, क्योंकि यह आसान है। इसलिए, उदाहरण के लिए, आरोही क्रम में सॉर्ट करते समय, तत्वों में से सबसे छोटे शीर्ष पर दिखाई देंगे।
आइए एक बबल विधि द्वारा सरणी को सॉर्ट करने के एल्गोरिदम के पहले संस्करण पर विचार करें। एक सरणी को सॉर्ट करने के लिए मौखिक एल्गोरिदम जिसमें पहचानकर्ता मास और एन तत्व होते हैं, इस तरह दिखते हैं:
1। पहले तत्व (मास [1]) के स्थान पर सरणी का सबसे बड़ा तत्व रखें। इसके लिए हम सभी शेष तत्वों (मास [2], मास [3] ... मास [एन]) के साथ इसकी तुलना करेंगे। यदि यह पता चला है कि शेष शेष तत्व मास [1] से अधिक हैं, तो उन्हें स्वैप करना होगा (अतिरिक्त चर बफ के माध्यम से)।
2. तत्व मास [1] को विचार से बाहर करने के बाद, तत्व मास [2] के लिए अनुच्छेद 1 दोहराएं।
3. आखिरी को छोड़कर सभी तत्वों के लिए इन क्रियाओं को दोहराया जाना चाहिए।
पास्कल में बबल सॉर्टिंग एल्गोरिदम का कार्यान्वयन:
दूसरे विकल्प के बारे में (एक बेहतर विधिबबल) हम कह सकते हैं कि यह एक त्वरित प्रकार एल्गोरिदम है। इसलिए, यदि आप पहले से सॉर्ट किए गए सरणी को सॉर्ट करने के लिए इसका उपयोग करने का प्रयास करते हैं, तो एल्गोरिदम सरणी के तत्वों के माध्यम से पहले पास होने के बाद अपना काम पूरा कर देगा। इसलिए, हम तत्वों की अर्थहीन तुलना के लिए सिस्टम और समय के कंप्यूटिंग संसाधनों का खर्च नहीं करेंगे।
पास्कल प्रोग्रामिंग भाषा के लिए इस सॉर्टिंग एल्गोरिदम का कार्यान्वयन यहां दिया गया है:
इसलिए, सॉर्टिंग एल्गोरिदम डेटा अनुक्रमों को ऑर्डर करने का माध्यम हैं। एक विशेष एल्गोरिदम चुनते समय, आपको सिस्टम के समय और संसाधनों के संदर्भ में लागतों को ध्यान में रखना चाहिए।