从维度 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.
我想将超立方体在维度 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.