是否有相当于Python的Python的itertools?

时间:2009-10-07 00:57:24

标签: java python combinatorics itertools

我正在搜索一个库(最好是通用的),它可以生成集合中包含的数据的可迭代组合和排列。笛卡尔积也很不错。

描述我想要的东西的最好方法是“itertools for Java”。

6 个答案:

答案 0 :(得分:10)

我实际上是在为java创建一个itertools的端口:它被称为neoitertools

任何反馈都会受到赞赏,因为它仍在测试阶段。缺少“产品”功能,还有一些密集测试。

答案 1 :(得分:5)

itertools除了只是组合和排列之外还有很多功能,所以(虽然在编写Java时拥有所有itertools肯定会很好;-)你可以得到远远少了。

例如,对于排列,请参阅here;对于组合,here(两个类来自同一作者)。

答案 2 :(得分:5)

答案 3 :(得分:2)

答案 4 :(得分:1)

我只是抛弃它,但是不应该使用Jython直接从Java使用Python的itertools实现吗?它是基于C的api吗?

[后来一个谷歌]

itertools (Jython API documentation)

实际上,上面列出的neoitertools项目看起来非常有前景,它似乎处于[非常]活跃的开发阶段(根据Google代码),并且看起来是一个完整的itertools功能实现,而且它可以通过行家。

只是我的2便士。

答案 5 :(得分:1)

几年后,combinatorics似乎符合您的需求。取自自述文件:

Simple permutations
Permutations with repetitions
Simple combinations
Combinations with repetitions
Subsets
Integer Partitions
List Partitions
Integer Compositions