Java tutorial
//package com.java2s; import java.util.Random; public class Main { public static void shuffleSubArray(int[] array, int subArrayLength, Random rand) { if (subArrayLength == 0) return; int subArrays = array.length / subArrayLength; for (int subArraysNum = 0; subArraysNum < subArrays; subArraysNum++) { int subArrayEndIndex = (subArraysNum + 1) * subArrayLength; int subArrayStartIndex = subArrayEndIndex - subArrayLength; for (int i = subArrayEndIndex; i > subArrayStartIndex + 1; i--) { int b = rand.nextInt(subArrayEndIndex - subArrayStartIndex) + subArrayStartIndex; if (b != i - 1) { int e = array[i - 1]; array[i - 1] = array[b]; array[b] = e; } } } } }