Pseudo random number sequence with non-repeating elements

4 views (last 30 days)
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)

the cyclist
the cyclist on 12 Mar 2017
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
ANJANA KRISHNAN A
ANJANA KRISHNAN A on 12 Mar 2017
This gives me actually what i need.Bt i'm not sure whether it will work that much fast for large number of elements.
the cyclist
the cyclist on 12 Mar 2017
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.

Community Treasure Hunt

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

Start Hunting!