Partitioning.partition(ObjectMatrix2D matrix,
int column,
Object[] splitters,
int[] splitIndexes)
Same as Partitioning.partition(int[],int,int,int[],int,int,int[])
except that it synchronously partitions the rows of the given matrix by the values of the given matrix column;
This is essentially the same as partitioning a list of composite objects by some instance variable;
In other words, two entire rows of the matrix are swapped, whenever two column values indicate so.

Partitioning.partition(ObjectMatrix2D matrix,
int[] rowIndexes,
int rowFrom,
int rowTo,
int column,
Object[] splitters,
int splitFrom,
int splitTo,
int[] splitIndexes)
Same as Partitioning.partition(int[],int,int,int[],int,int,int[])
except that it synchronously partitions the rows of the given matrix by the values of the given matrix column;
This is essentially the same as partitioning a list of composite objects by some instance variable;
In other words, two entire rows of the matrix are swapped, whenever two column values indicate so.

Partitioning.partition(ObjectMatrix2D matrix,
int column,
Object[] splitters,
int[] splitIndexes)
Same as Partitioning.partition(int[],int,int,int[],int,int,int[])
except that it synchronously partitions the rows of the given matrix by the values of the given matrix column;
This is essentially the same as partitioning a list of composite objects by some instance variable;
In other words, two entire rows of the matrix are swapped, whenever two column values indicate so.