在用隐枚举法解0-1型整数线性规划时,需要生成对应于自变量个数的不重复的0-1序列的排列组合。下面是用一个两层循环实现生成0-1型整数线性规划问题解空间的代码。
def generateSequence(n):
x = []
x.append([0 for i in range(n)])
xTran = []
m = 0
while len(x) != 2 ** n:
for i in range(len(x)):
for j in range(n):
xTran.append(x[i][j])
xTran[n - m - 1] = 1
x.append(xTran)
xTran = []
m += 1
return x
n = 3
solution = generateSequence(n)
print(solution)