实现二进制计数方法以生成集合子集的 C++ 程序
这是一个C++程序,用于实现二进制计数方法以生成集合的子集。
算法
Begin Take the array elements as input. function BinaryCounting(): Calculate subset by r = pow(2, n) //这里n=元素数。 Generate binary numbers from 0 to r-1. Call solution() for each binary string of n character. End
示例
#include输出结果#include using namespace std; void solution(char code[], int a[], int n) //打印解决方案 { int i; cout<<"\t { "; for(i = 0; i < n; i++) { if(code[i] == '1') cout<>n; int a[n]; cout<<"\n"; for(i = 0; i < n; i++) { cout<<"Enter "<>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 }