在第n个索引处追加元素

时间:2014-01-13 16:32:47

标签: clojure clojure-contrib

我正在研究一个函数,它将一个向量(可能是嵌套向量)作为输入,并带有一些数量y和索引n。本质上,函数会在向量中的第n个元素之后追加y并且与其余元素相邻。到目前为止,我已经写了以下内容,但这并没有按计划进行:

(defn funcs [x y n]
(concat (take (- n 1) x) (concat (take-last (- (count x) n) y))))

1 个答案:

答案 0 :(得分:3)

如果要将向量作为最终值返回,则必须使用into(在右操作数的大小中按时间线性)或core.rrb-vector的{{{3}}来连接向量。 {1}}(对数时间,但结果向量总体上会稍慢)。

至于实际实现,假设你想使用core.rrb-vector:

catvec