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

रिकर्सिव बबल सॉर्ट के लिए सी ++ प्रोग्राम?

इस खंड में हम प्रसिद्ध बबल सॉर्ट तकनीक का एक और तरीका देखेंगे। हमने बबल सॉर्ट का उपयोग पुनरावृत्त तरीके से किया है। लेकिन यहां हम बबल प्रकार के पुनरावर्ती दृष्टिकोण को देखेंगे। पुनरावर्ती बबल सॉर्ट एल्गोरिथ्म इस तरह दिखता है।

एल्गोरिदम

bubbleRec(arr, n)

begin
   if n = 1, return
   for i in range 1 to n-2, do
      if arr[i] > arr[i+1], then
         exchange arr[i] and arr[i+1]
      end if
   done
   bubbleRec(arr, n-1)
end

उदाहरण

#include<iostream>
using namespace std;
void recBubble(int arr[], int n){
   if (n == 1)
      return;
   for (int i=0; i<n-1; i++) //for each pass p
      if (arr[i] > arr[i+1]) //if the current element is greater than next one
   swap(arr[i], arr[i+1]); //swap elements
   recBubble(arr, n-1);
}
main() {
   int data[] = {54, 74, 98, 154, 98, 32, 20, 13, 35, 40};
   int n = sizeof(data)/sizeof(data[0]);
   cout << "Sorted Sequence ";
   recBubble(data, n);
   for(int i = 0; i <n;i++){
      cout << data[i] << " ";
   }
}

आउटपुट

Sorted Sequence 13 20 32 35 40 54 74 98 98 154

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

    एक हीप एक पूर्ण बाइनरी ट्री है जो या तो मिन हीप या मैक्स हीप है। मैक्स हीप में, रूट की कुंजी हीप में मौजूद सभी कुंजियों के बीच अधिकतम होनी चाहिए। बाइनरी ट्री में सभी नोड्स के लिए यह गुण पुनरावर्ती रूप से सत्य होना चाहिए। मिन हीप मिनहीप के समान है। कार्य विवरण शून्य BHeap::Insert(int ele): ढेर में त

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

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

  1. रिकर्सिव बबल सॉर्ट के लिए जावा प्रोग्राम

    रिकर्सिस बबल सॉर्ट के लिए जावा प्रोग्राम निम्नलिखित है - उदाहरण import java.util.Arrays; public class Demo{    static void bubble_sort(int my_arr[], int len_arr){       if (len_arr == 1)       return;       for (int i=0; i<len_arr-1; i++) &nb