求集合幂集的一种方法
程序员文章站
2022-03-04 12:28:27
...
原理:
幂集即原集合所有子集组成的元素;对原集合中的每个元素取或不取,构成的所有情况,即与原集合所有子集一一对应;对取或不取用二进制1或0表示,即可用2原集合元素个数个数字来表示原集合的所有子集。
c++代码实现:
#include <iostream>
using namespace std;
void funPowerSet(int * b, int iSetLen)
{
for (int i = 0; i < _Pow_int(2, iSetLen); i++)
{
cout << "{";
unsigned long lObtainDigital = 1;
for (int j = 0; j < iSetLen; j++)
{
if (i&lObtainDigital)
cout << b[j] << "\t";
lObtainDigital = lObtainDigital<<1;
}
cout << "}\n";
}
}
上一篇: php 上传文件写入失败怎么办
下一篇: tp上传图片与生成缩略图功能的实现示例