Class Permutations


  • public class Permutations
    extends java.lang.Object
    Functions which generate random permutations.
    Author:
    Mikio L. Braun
    • Method Detail

      • randomPermutation

        public static int[] randomPermutation​(int size)
        Create a random permutation of the numbers 0, ..., size - 1. see Algorithm P, D.E. Knuth: The Art of Computer Programming, Vol. 2, p. 145
      • randomSubset

        public static int[] randomSubset​(int k,
                                         int n)
        Get a random sample of k out of n elements. See Algorithm S, D. E. Knuth, The Art of Computer Programming, Vol. 2, p.142.
      • permutationDoubleMatrixFromPivotIndices

        public static DoubleMatrix permutationDoubleMatrixFromPivotIndices​(int size,
                                                                           int[] ipiv)
        Create a permutation matrix from a LAPACK-style 'ipiv' vector.
        Parameters:
        ipiv - row i was interchanged with row ipiv[i]
      • permutationFloatMatrixFromPivotIndices

        public static FloatMatrix permutationFloatMatrixFromPivotIndices​(int size,
                                                                         int[] ipiv)
        Create a permutation matrix from a LAPACK-style 'ipiv' vector.
        Parameters:
        ipiv - row i was interchanged with row ipiv[i]