Есть ли эквивалент itertools Python для Java? [закрытый]

Я ищу библиотеку (желательно общую), которая генерирует итерационные комбинации и перестановки данных, содержащихся в коллекциях. Декартово произведение тоже было бы неплохо.

лучшим способом описания того, что я хочу, будет "itertools для Java".

6 ответов


itertools делает гораздо больше, чем просто комбинации и перестановки, так что (хотя, конечно, было бы неплохо иметь все itertools при кодировании Java; -) вы можете уйти с гораздо меньшим.

например, для перестановок см. здесь; для комбинаций, здесь (оба класса от одного автора).


Я фактически делаю порт itertools на java: он называется neoitertools

любая обратная связь ценится, как это все еще в бета-версии. Отсутствует функция "продукт" еще и некоторые интенсивные тесты.



здесь вы найдете то, что может покрыть ваши комбинаторные должен поставляться в библиотеке:

http://code.google.com/p/combinatoricslib/


Я просто бросаю это там, но не должно ли быть возможно использовать реализацию itertools Python непосредственно из Java с помощью Jython? Это api на основе C?

[один Google позже]

itertools (документация по API Jython)

на самом деле neoitertools проект, указанный выше, выглядит очень многообещающим, он, по-видимому, находится в [очень] активной разработке (в соответствии с кодом Google) и выглядит как полная имплеметация функциональность itertools, плюс она доступна через Maven.

только мои 2 пенса.


несколько лет спустя, комбинаторика кажется, соответствует вашим потребностям. Взято из readme:

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