欢迎!请参阅 关于 页面,了解有关该功能的更多信息。
当调用 items 中包含一些重复项,并提供了 :min 和 :max 参数时,clojure.math.combinatorics/partitions 可能会抛出 IndexOutOfBoundsException。例如 (dorun (clojure.math.combinatorics/partitions [1 1 2 3 4 5] :min 5 :max 5)) 执行错误 (IndexOutOfBoundsException) 在 clojure.math.combinatorics/m5$fn (combinatorics.cljc:859).当 items 中没有至少一个是重复项时,我就无法复制这个问题,当 :min 不至少是 5 时,我也无法复制它。我认为必须提供 :max,但并不总是需要等于 :min。这也发生在非数字项上,且与 items 的顺序无关。它似乎是在第一个项目被重复时发生,但不是对其他项目。
items
:min
:max
clojure.math.combinatorics/partitions
IndexOutOfBoundsException
(dorun (clojure.math.combinatorics/partitions [1 1 2 3 4 5] :min 5 :max 5)) 执行错误 (IndexOutOfBoundsException) 在 clojure.math.combinatorics/m5$fn (combinatorics.cljc:859).
5
这是我对问题验证(以及发现一些额外问题,如 :min 5 单独会导致堆空间错误)后尝试的补丁:https://clojure.atlassian.net/browse/MCOMB-11
:min 5
我想知道这能否修复您找到的其他情况!