Pseudo random number sequence with non-repeating elements

I want to generate a pseudo random number sequence which doesn't repeat any of its elements.
For example,I need 25 elements in that sequence,the values of elements ranges from 1 to 25,and no elements should be repeated.(Actually,the number of elements i need in that sequence is very large).
Also,this sequence should be reconstructable (using a seed) later.
How can i do that?I read about randperm. But i think its not suitable in this case.

Answers (1)

Why do you think randperm is not what you need? It seems right to me.
rng(1234) % Set a seed for reproducibility
randperm(25) % Generate integers from 1:25, without replacement

2 Comments

This gives me actually what i need.Bt i'm not sure whether it will work that much fast for large number of elements.
I'm not sure how fast you need. On my machine, this method generated 100,000,000 elements in 7 seconds.

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 12 Mar 2017

Commented:

on 12 Mar 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!