【发布时间】:2012-06-12 03:28:24
【问题描述】:
非常简单+愚蠢的问题:
clojure 是否提供多地图?我目前有这样的事情:
(defn wrap [func]
(fn [mp x]
(let [k (func x)]
(assoc mp k
(match (get mp k)
nil [x]
v (cons v x))))))
(defn create-mm [func lst]
(reduce (wrap func) {} lst))
最终创建了一个映射,其中对于每个键,我们都有一个包含该键的所有元素的向量。不过好像multi map是一个很基础的数据结构,不知道clojure有没有内置的。
谢谢
【问题讨论】:
标签: clojure