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

सी ++ प्रोग्राम एक सेट के सबसेट उत्पन्न करने के लिए बाइनरी काउंटिंग विधि को लागू करने के लिए

यह एक सेट के सबसेट को उत्पन्न करने के लिए बाइनरी काउंटिंग मेथड को लागू करने के लिए एक C++ प्रोग्राम है।

एल्गोरिदम

Begin
   Take the array elements as input.
   function BinaryCounting():
      Calculate subset by r = pow(2, n) // here n = number of elements.
      Generate binary numbers from 0 to r-1.
      Call solution() for each binary string of n character.
End

उदाहरण

#include<iostream>
#include<math.h>
using namespace std;
void solution(char code[], int a[], int n) //print the solution
{
   int i;
   cout<<"\t { ";
      for(i = 0; i < n; i++) {
         if(code[i] == '1')
            cout<<a[i]<<" ";
      }
   cout<<"}\n";
}
int BinaryCounting(int a[], int n) {
   int r, i, l;
   char bin[] = "00000";
   r = pow(2, n);
   //Generate binary numbers from 0 to r-1.
   for(i = 0; i < r; i++) {
      solution(bin, a, n);
      l=n-1;
      h:
      if(bin[l] == '0')
         bin[l] = '1';
      else {
         bin[l] = '0';
         l--;
         goto h;
      }
   }
}
int main() {
   int i, n;
   cout<<"\nEnter the number of elements: ";
   cin>>n;
   int a[n];
   cout<<"\n";
   for(i = 0; i < n; i++) {
      cout<<"Enter "<<i+1<<" element: ";
      cin>>a[i];
   }
   cout<<"\nThe subset in the binary counting method: \n";
   BinaryCounting(a, n);
   return 0;
}

आउटपुट

Enter the number of elements: 4
Enter 1 element: 4
Enter 2 element: 3
Enter 3 element: 2
Enter 4 element: 1
The subset in the binary counting method:
{ }
{ 1 }
{ 2 }
{ 2 1 }
{ 3 }
{ 3 1 }
{ 3 2 }
{ 3 2 1 }
{ 4 }
{ 4 1 }
{ 4 2 }
{ 4 2 1 }
{ 4 3 }
{ 4 3 1 }
{ 4 3 2 }
{ 4 3 2 1 }

  1. STL में Set_Union को लागू करने के लिए C++ प्रोग्राम

    दो समुच्चयों का मिलन उन तत्वों द्वारा निर्मित होता है जो किसी एक समुच्चय में या दोनों में मौजूद होते हैं। दूसरे सेट के तत्व जिनमें पहले सेट में समान तत्व होते हैं, उन्हें परिणामी सेट में कॉपी नहीं किया जाता है। सामान्य सेट ऑपरेशन हैं - संघ सेट करें चौराहे सेट करें सममित सेट अंतर या अनन्य-या अंतर य

  1. सी++ कार्यक्रम एसटीएल में Set_Intersection लागू करने के लिए

    दो समुच्चयों का प्रतिच्छेदन केवल उन तत्वों से बनता है जो दोनों समुच्चयों में उभयनिष्ठ हैं। फ़ंक्शन द्वारा कॉपी किए गए तत्व हमेशा पहले सेट से उसी क्रम में आते हैं। दोनों सेटों के तत्वों को पहले ही ऑर्डर कर दिया जाएगा। सामान्य सेट ऑपरेशन हैं - संघ सेट करें चौराहे सेट करें सममित सेट अंतर या अनन्य-या

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

    दो समुच्चयों का अंतर केवल पहले सेट में मौजूद तत्वों से बनता है, दूसरे सेट में नहीं। फ़ंक्शन द्वारा कॉपी किए गए तत्व हमेशा पहले सेट से उसी क्रम में आते हैं। दोनों सेटों के तत्वों को पहले ही ऑर्डर कर दिया जाएगा। सामान्य सेट ऑपरेशन हैं - संघ सेट करें चौराहे सेट करें सममित सेट अंतर या अनन्य-या अंतर या