求一个集合的所有子集(c语言)
如果一个集合的元素个数为n,则每个元素都有存在或不存在两种情况,n个元素一共2^n种情况,因此元素个数为n的集合一共有2的n次方个子集。算法1:利用二进制的思想 如 0110 1001,0表示该数组位置不选,1表示选中。加入数组为[1,2,3,4] 0110就表示[2,3] 1001表示[1,4]例如:求arr[4]={1,2,3,4}的所有子集用for(i=0;i<16;i++)遍历这16种情况,每一个i的值,例如i=3,则二进制数为0011,我们从右边往左遍历(最右边为低位0