【发布时间】:2016-04-12 10:54:00
【问题描述】:
给定(矩形)邻接矩阵m,如何用q语言构造邻接表?
在QIdioms wiki 中,我在k 语言中找到了解决方案,当使用k) 命令通过q 控制台运行时会出现'vs 错误:
m:(1 0 1;1 0 1)
k) (^m)_vs &,/m
'vs
结果应该是:
0 0 1 1
0 2 0 2
这是我能够在q 中复制的内容:
k) &,/m
0 2 3 5
q) where raze m
0 2 3 5
k's^ a.k.a. shape q 中缺少动词,所以我就这样做了:
k) (^m)
000b
000b
q) 2 3#0b
000b
000b
现在,因为:
q) parse "vs"
k) {x\:y}
我都尝试了都不成功:
q) (2 3#0b) _vs where raze m
'
q) (2 3#0b) _\: where raze m
'type
注意QIdioms wiki 有q solution 用于逆问题:从 adj.list 到 adj.matrix。
【问题讨论】: