如何生成二进制字符串的所有可能子集?
我有一个问题,我不知道如何解决。
我有一个二进制字符串,我想生成所有可能的二进制子字符串。
范例:
input : 10111output: 10000, 10100,00111,00001,10110 ...
我该怎么做,又快又聪明?
回答:
魔术-假设使用位掩码:
subset( int x ) list = ()
for ( int i = x; i >= 0; i = ( ( i - 1 ) & x ) )
list.append( i )
return list
您可以使用相同的逻辑,尽管会涉及更多一点,但使用二进制字符串。
以上是 如何生成二进制字符串的所有可能子集? 的全部内容, 来源链接: utcz.com/qa/408380.html