您当然可以使用(未经测试)轻松矢量化最内层循环:
for i in range(N):
for j in range(i):
assert all(D[i,j] <= D[i,:] + D[:,j])
Run Code Online (Sandbox Code Playgroud)
对于双向量化,您可以循环k(也未经测试):
for k in range(N):
row = D[k,:].reshape(1, N)
col = D[:,k].reshape(N, 1)
assert (D <= row + col).all()
Run Code Online (Sandbox Code Playgroud)
(row + col生成与 相同大小的方阵D)
| 归档时间: |
|
| 查看次数: |
1272 次 |
| 最近记录: |