如何找到列表列表中元素数量最多的列表?
例如,说我有以下列表列表:
l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`JPM)
我想返回`MSFT`JPM`GOOG`BNP
这是元素数量最多(4个元素)的列表。
答案 0 :(得分:2)
一种方法是:
first l where c=max c:count each l
计算每个列表,获取最大数量的位置,并以此索引原始列表
答案 1 :(得分:2)
根据符号组成,当前接受的答案将失败。
q)l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`ZZZZ`ZZZZ`ZZZZ)
q)l first idesc l
`ZZZZ`ZZZZ`ZZZZ
以下内容将起作用,而不管列表内容如何
q)l first idesc count each l
答案 2 :(得分:0)
另一种方法是
1#desc l
或者您可以将1#
替换为first
,以使其更具可读性
答案 3 :(得分:0)
有趣的是,这是另一个选择
l first idesc l
找到最高的下降坡度并将其用作索引。