Selection Sort Algorithm – इस प्रकार की Sorting में List की प्रथम इकाई से शुरू करके पूरी List में न्यूनतम मान को खोजा जाता है और उस मान को List के प्रारंभ में रख दिया जाता है। उसके बाद शेष List में से दूसरे स्थान के लिये न्यूनतम मान को खोजा जाता है और प्राप्त मान को दूसरे स्थान पर रख दिया जाता है। फिर तीसरे स्थान के लिये यही क्रम अपनाते है और तीसरे स्थान पर शेष List में से प्राप्त न्यूनतम मान को रख दिया जाता है। ये क्रम तब तक चलता है, जब तक कि पूरी List की Sorting नहीं हो जाती।
इसका Algorithm निम्नानुसार होता है-
[code] #Here LArray[N] is an Array with N Elements. #This Algorithm SORTS the Data Items of the Array START REPEATE FOR I = 1 To N – 1 STEP I = I + 1 [ Outer Loop] REPEATE FOR J = I + 1 To N – 1 STEP J = J + 1 [ Inner Loop ] IF LArray[ I ] > LArray[ J ] LArray[ I ] = LArray[ J ] [ Interchange Data Items ] [ End of Inner Loop ] [ End of Outer Loop ] End [/code]
इस Algorithm की Complexity इस बात पर निर्भर करती है कि Data Structure में Data किस तरह से Organized हैं। यदि Data लगभग Sorted हो तो इस Algorithm की Complexity कम होती है। लेकिन फिर भी इस Algorithm की Complexity O(n2) से अधिक नहीं हो सकती। यानी Data का अधिकतम Comparison n2 बार हो सकता है।
इस Algorithm का प्रयोग करके हम निम्नानुसार Sorting का Function बनाकर अपने Program में Use कर सकते हैं।
[code] void SelectionSort(int *Array, int size) { int i, j, temp; for(i=0; i<size; i++) { for(j=i+1; j<size; j++) { if(Array[i]>Array[j]) { temp = Array[i]; Array[i] = Array[j]; Array[j] =temp; } } } }[/code]
ये Article इस वेबसाईट पर Selling हेतु उपलब्ध EBook Data Structure and Algorithms in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी।
Data Structure and Algorithms in Hindi | Page: 433 | Format: PDF