布尔方程组补

时间:2010-12-06 18:25:04

标签: algorithm

如果我有一个n位布尔方程组,有没有简单的方法或算法得到补集?

例如说我有一个3位布尔方程组{110,001},有没有简单的方法可以得到U(3位置换)下的补集,即{000,010,011,100,101,111}?

谢谢!

3 个答案:

答案 0 :(得分:0)

运行整个U(从02^x - 1,其中x是位数)并省略您已经拥有的那些。您可以将它们转换为数字,以便更快地检查相等性。

答案 1 :(得分:0)

SET[] = {6, 1}

for(i=0;i<N;i++) {
 if(!exists(SET)) {
  add(i, COMPLEMENT_SET)
 }
}

N = 2 ^ n-1 像这样......

答案 2 :(得分:0)

您可以从U中减去您的设置。