यहां हम देखेंगे कि किसी दिए गए सेट के सभी अलग-अलग सबसेट को कैसे प्रदर्शित किया जाए। अतः यदि समुच्चय {1, 2, 3} है, तो उपसमुच्चय {}, {1}, {2}, {3}, {1, 2}, {2, 3}, {1, 3} होंगे। , {1, 2, 3}। सभी उपसमुच्चयों के समुच्चय को घात समुच्चय कहते हैं। पावर सेट में 2n तत्व होते हैं।
हम 0 से 2n (छोड़कर) के माध्यम से लूप करेंगे, प्रत्येक पुनरावृत्ति में हम जांच करेंगे कि वर्तमान काउंटर में ith बिट सेट है या नहीं, फिर ith तत्व प्रिंट करें।
उदाहरण
#include<iostream>
#include<cmath>
using namespace std;
void showPowerSet(char *set, int set_length) {
unsigned int size = pow(2, set_length);
for(int counter = 0; counter < size; counter++) {
cout << "{";
for(int j = 0; j < size; j++) {
if(counter & (1<<j))
cout << set[j] << " ";
}
cout << "}" << endl;
}
}
int main() {
char set[] = {'a','b','c'};
showPowerSet(set, 3);
} आउटपुट
{}
{a }
{b }
{a b }
{c }
{a c }
{b c }
{a b c }