欢迎!有关此操作的信息,请参阅 关于 页面。
当使用包含一些重复项目的 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
我很想知道这个修复了你发现的其他情况吗!