JavaPermutationTools (JPT) is a Java library for representing and generating permutations and sequences, as well as performing computation on permutations and sequences. This includes implementations of a variety of permutation distance metrics as well as distance metrics on sequences (i.e., Strings, arrays, and other ordered data types).
The source code is hosted on GitHub; and is licensed under the GNU General Public License Version 3 (GPLv3). The library's jar files are regularly published to Maven Central, from which it is easily imported into software projects using Maven and other commonly used build tools. Additionally, there is a GitHub repository of example programs that show basic usage of the JPT library, as well as replication programs that reproduce results found in published papers.
For more information see the JavaPermutationTools website. Potential contributors, please see the source repository, and/or contact Vincent A. Cicirello.
| Package | Description |
|---|---|
| org.cicirello.math |
Collection of classes related to a variety of mathematical concepts.
|
| org.cicirello.math.la |
Collection of classes related to linear algebra.
|
| org.cicirello.math.rand |
Collection of classes related to random number generation.
|
| org.cicirello.math.stats |
Collection of classes related to statistics.
|
| org.cicirello.permutations |
Collection of classes related to representing and manipulating permutations.
|
| org.cicirello.permutations.distance |
Implementations of a variety of permutation distance measures.
|
| org.cicirello.sequences |
Classes that perform a variety of operations on sequences (such as arrays, etc).
|
| org.cicirello.sequences.distance |
Implementations of distance measures for general sequences of various forms, including Strings, arrays of primitive types, arrays of objects, etc.
|
| org.cicirello.util |
This package includes classes and interfaces that serve some useful utility purpose.
|