randperm (RandStream)

Случайное сочетание

Синтаксис

p = randperm(s,n)
p = randperm(s,n,k)

Описание

p = randperm(s,n) возвращает вектор-строку, содержащий случайное сочетание целых чисел от 1 до n включительно. randperm(s,n) использует случайные значения, чертившие от случайного потока s.

p = randperm(s,n,k) возвращает вектор-строку, содержащий k уникальные целые числа, выбранные случайным образом от 1 до n включительно.

Примеры

Создайте случайный поток s и сгенерируйте случайное сочетание целых чисел от 1 до 6 на основе s:

s = RandStream('mt19937ar','Seed',0);
randperm(s,6)
MATLAB® возвращает вектор
[6     3     5     1     2     4]

Используйте случайный поток s сгенерировать три целых числа между 1 и 10:

randperm(s,10,3)
ans =
      1     8     9

Советы

Для p = randperm(s,n,k)P содержит k уникальные значения. randperm выполняет k-сочетания (производящий без замены). Чтобы позволить повторенные значения в выходе (производящий с заменой), используйте randi(s,n,1,k).

Расширенные возможности