Случайная перестановка
p = randperm (n)
p = randperm (n, k)
p = randperm(n) возвращает вектор - строку, содержащий случайную перестановку целых чисел от 1 до n включительно.
p = randperm(n,k) возвращает вектор - строку, содержащий k уникальные целые числа, выбранные случайным образом от 1 до n включительно.
randperm(6)
[3 2 6 4 1 5]
randperm в большинстве случаев возвратили бы два различных вектора:randperm(6)
ans =
5 2 6 4 1 3
randperm(6)
ans =
4 1 6 2 3 5randperm(6,3)
[4 2 5]
Для p = randperm(n,k) p содержит k уникальные значения. randperm выполняет k-перестановки (выбирающий без замены). Чтобы позволить повторенные значения в выводе (выбирающий с заменой), используйте randi(n,1,k).
randperm использует тот же генератор случайных чисел в качестве rand, randi и randn. Вы управляете этим генератором с rng.
nchoosek | перманент | перестановка | randi | randperm (RandStream) | rng