两种方法获取数组的所有子集

一、递归计算

要注意的是递归跳出的条件,还有在把元素加到列表中时注意要使用一个临时变量,否则会报错,因为collections底层被改变了。

两种方法获取数组的所有子集_第1张图片
递归计算子集

二、位运算

要注意的是在右移寻找1时,无论该位是否有1都应该右移,否则会死循环。

两种方法获取数组的所有子集_第2张图片
位运算计算子集

你可能感兴趣的:(两种方法获取数组的所有子集)