本文整理汇总了Java中org.apache.commons.math3.util.MathArrays.natural方法的典型用法代码示例。如果您正苦于以下问题:Java MathArrays.natural方法的具体用法?Java MathArrays.natural怎么用?Java MathArrays.natural使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.commons.math3.util.MathArrays
的用法示例。
在下文中一共展示了MathArrays.natural方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: nextPermutation
import org.apache.commons.math3.util.MathArrays; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*
* This method calls {@link MathArrays#shuffle(int[],RandomGenerator)
* MathArrays.shuffle} in order to create a random shuffle of the set
* of natural numbers {@code { 0, 1, ..., n - 1 }}.
*
* @throws NumberIsTooLargeException if {@code k > n}.
* @throws NotStrictlyPositiveException if {@code k <= 0}.
*/
public int[] nextPermutation(int n, int k)
throws NumberIsTooLargeException, NotStrictlyPositiveException {
if (k > n) {
throw new NumberIsTooLargeException(LocalizedFormats.PERMUTATION_EXCEEDS_N,
k, n, true);
}
if (k <= 0) {
throw new NotStrictlyPositiveException(LocalizedFormats.PERMUTATION_SIZE,
k);
}
int[] index = MathArrays.natural(n);
MathArrays.shuffle(index, getRandomGenerator());
// Return a new array containing the first "k" entries of "index".
return MathArrays.copyOf(index, k);
}