Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ प्रोग्राम सिलेक्शन सॉर्ट को लागू करने के लिए

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

चयन सॉर्ट तकनीक की जटिलता

  • समय जटिलता:O(n 2 )

  • अंतरिक्ष जटिलता:ओ(1)

Input − The unsorted list: 5 9 7 23 78 20
Output − Array after Sorting: 5 7 9 20 23 78

एल्गोरिदम

चयनसॉर्ट (सरणी, आकार)

इनपुट :डेटा की एक सरणी, और सरणी में कुल संख्या

आउटपुट :क्रमबद्ध सरणी

Begin
   for i := 0 to size-2 do //find minimum from ith location to size
      iMin := i;
      for j:= i+1 to size – 1 do
         if array[j] < array[iMin] then
            iMin := j
      done
      swap array[i] with array[iMin].
   done
End

उदाहरण कोड

#include<iostream>
using namespace std;
void swapping(int &a, int &b) {         //swap the content of a and b
   int temp;
   temp = a;
   a = b;
   b = temp;
}
void display(int *array, int size) {
   for(int i = 0; i<size; i++)
      cout << array[i] << " ";
   cout << endl;
}
void selectionSort(int *array, int size) {
   int i, j, imin;
   for(i = 0; i<size-1; i++) {
      imin = i;   //get index of minimum data
      for(j = i+1; j<size; j++)
         if(array[j] < array[imin])
            imin = j;
         //placing in correct position
         swap(array[i], array[imin]);
   }
}
int main() {
   int n;
   cout << "Enter the number of elements: ";
   cin >> n;
   int arr[n];           //create an array with given number of elements
   cout << "Enter elements:" << endl;
   for(int i = 0; i<n; i++) {
      cin >> arr[i];
   }
   cout << "Array before Sorting: ";
   display(arr, n);
   selectionSort(arr, n);
   cout << "Array after Sorting: ";
   display(arr, n);
}

आउटपुट

Enter the number of elements: 6
Enter elements:
5 9 7 23 78 20
Array before Sorting: 5 9 7 23 78 20
Array after Sorting: 5 7 9 20 23 78

  1. बकेट सॉर्ट को लागू करने के लिए C++ प्रोग्राम

    बकेट सॉर्टिंग तकनीक में, डेटा आइटम बकेट के एक सेट में वितरित किए जाते हैं। प्रत्येक बकेट में समान प्रकार का डेटा हो सकता है। वितरण के बाद, प्रत्येक बाल्टी को दूसरे सॉर्टिंग एल्गोरिदम का उपयोग करके सॉर्ट किया जाता है। उसके बाद सॉर्ट किए गए फॉर्म को प्राप्त करने के लिए सभी तत्वों को मुख्य सूची में इकट

  1. रेडिक्स सॉर्ट को लागू करने के लिए C++ प्रोग्राम

    मूलांक छँटाई गैर-तुलनात्मक छँटाई एल्गोरिथ्म है। यह सॉर्टिंग एल्गोरिदम समान स्थिति और मान साझा करने वाले अंकों को समूहीकृत करके पूर्णांक कुंजियों पर काम करता है। मूलांक एक संख्या प्रणाली का आधार है। जैसा कि हम जानते हैं कि दशमलव प्रणाली में मूलांक या आधार 10 होता है। इसलिए कुछ दशमलव संख्याओं को छांटन

  1. C++ प्रोग्राम जटिलता की कमी के साथ त्वरित क्रम को लागू करने के लिए

    त्वरित छँटाई फूट डालो और जीतो पर आधारित है। इस एल्गोरिदम की औसत समय जटिलता ओ (एन * लॉग (एन)) है लेकिन सबसे खराब स्थिति जटिलता ओ (एन ^ 2) है। सबसे खराब स्थिति की संभावना को कम करने के लिए यहां क्विकसॉर्ट को रैंडमाइजेशन का उपयोग करके लागू किया गया है। एल्गोरिदम विभाजन(int a[], int l,int h) Begin