从维度 n 的超立方体创建所有向量的方法是什么?

What is a way to create all vectors from the hypercube in dimension n?

我想将超立方体在维度 n 中创建的所有向量存储在矩阵中,例如维度 n=3:

matrix = [[0 0 0], [0 0 1], [0 1 0], [0 1 1],
          [1 0 0], [1 0 1], [1 1 0], [1 1 1]]

在scilab中有什么好的方法吗?

谢谢!

也许是这样(这就像用二进制从0数到2^n-1)

n=3;
mat = zeros(2^n,n);
for i = 1:2^n
    mat(i,:) = bitget(i-1,1:n); 
end

--> mat
 mat  = 

   0.   0.   0.
   1.   0.   0.
   0.   1.   0.
   1.   1.   0.
   0.   0.   1.
   1.   0.   1.
   0.   1.   1.
   1.   1.   1.