java的置换/组合库?

java的置换/组合库?,java,permutation,combinatorics,Java,Permutation,Combinatorics,我正在寻找一个java库,它将生成一个集合的所有可能的顺序排列。我能找到的唯一图书馆是。我发现很难相信这是唯一一个这样做的java库,坦率地说,我对此感到非常惊讶 JDK、apache commons math或其他库中是否有提供相同功能的内容 我很高兴使用CombinaticsLib,除了自己编写算法之外,我简直不敢相信这是唯一的选择,这一点不难,但.isBlankOrNull()也不难,apache commons包括这一点。你检查过了吗?它似乎在Collections2 类集合2 排列(集

我正在寻找一个java库,它将生成一个集合的所有可能的顺序排列。我能找到的唯一图书馆是。我发现很难相信这是唯一一个这样做的java库,坦率地说,我对此感到非常惊讶

JDK、apache commons math或其他库中是否有提供相同功能的内容

我很高兴使用CombinaticsLib,除了自己编写算法之外,我简直不敢相信这是唯一的选择,这一点不难,但.isBlankOrNull()也不难,apache commons包括这一点。

你检查过了吗?它似乎在
Collections2

类集合2
排列(集合元素)
返回指定集合的所有置换的集合

Apache Commons集合库版本4中有一个类。它接受一个泛型集合,并提供一个迭代器,该迭代器迭代集合中所有元素的排列(迭代器上对next()的每次调用都提供一个有序列表)


我刚刚意识到藏书库的第4版只在2013年11月27日发布。版本3没有提供用于排列的实用程序。V4“通过支持Java 1.5引入的新语言功能,主要是对泛型的支持,代表了对集合的重大改进。”

FYI,作为一般规则,“它在库中吗?”与“难度”的相关性较低,与“有多少人在实际问题中经常遇到此用例”的相关性更大@路易斯瓦瑟曼:如果这是正确的,那么为什么没有用于
tree
trie
数据结构的库呢?我认为我的上述陈述也回答了这个问题,尽管也是这样的情况,trys是一种通用的结构,使一个库适合所有用例或多或少是不可能的。