小编use*_*652的帖子

在Clojure中排序列表

我试图以特定的方式对Clojure列表(或seq,如果它是所谓的)进行排序.我希望它按降序排列最后一项的优先级,然后按升序排列第一项.一个例子:

(def pnts '((1 2)
            (2 4)
            (3 2)
            (4 10)
            (5 3)
            (6 1)
            (7 2)))

(sort-by last > pnts)
;; ((4 10) (2 4) (5 3) (1 2) (3 2) (7 2) (6 1))
;; Notice how (1 2), (3 2), (7 2) are sorted. This
;; is correct and is what I want.
Run Code Online (Sandbox Code Playgroud)

(排序由过去的),似乎是在做的伎俩,虽然这可能是因为点最初由排序第一个项目.我正在实现我正在编写点的ASCII/CLI图形脚本的方式将始终像pnts那样排序.我的问题是什么是可以保证这种排序偏好的命令?

PS我尝试过(排序方式(juxt last first)(juxt> <)pnts)但无济于事.

sorting clojure

6
推荐指数
2
解决办法
1682
查看次数

标签 统计

clojure ×1

sorting ×1