【发布时间】:2016-02-07 02:07:51
【问题描述】:
在 C++ 中,标准库中有一个名为 stable_partition 的函数,它接受一个集合和一个谓词。它划分集合并将谓词返回 true 的元素放在一个位置,将谓词返回 false 的元素放在另一个位置,同时保留元素的相对顺序。
我只是想知道标准 clojure 库中是否有类似的东西。尽管我进行了搜索,但我找不到这样的功能。它可能会返回两个较小集合的惰性序列,其中一个集合包含谓词返回 true 的元素,另一个集合包含谓词返回 false 的元素。
它可能看起来像这样:
(stable-partition even? [1 2 3 4 5]) -> ([1 3 5] [2 4])
【问题讨论】: