in reply to Re^2: Check randomly generated numbers have not been used before (2 dimensional shuffle)
in thread Check randomly generated numbers have not been used before

BTW

The real complication of this whole approach of "try again another random number if already taken" idea, cause this will slow down considerably after a while if millions of random numbers need to be tried out.

Here are the average times, per 1000 part numbers, for the first 9 millions from the 10 million range:

[1000000]Ave: 0.003626 [2000000]Ave: 0.004084 [3000000]Ave: 0.004650 [4000000]Ave: 0.005443 [5000000]Ave: 0.006492 [6000000]Ave: 0.008238 [7000000]Ave: 0.010892 [8000000]Ave: 0.017433 [9000000]Ave: 0.300273

So sure, allocating the 9th million takes roughly 100 times as long as the first.

But that still means that unless the OPs company are going to need to allocate 1 million new part numbers in less than 5 minutes, the "slow down" isn't going to be any kind of a problem.

And if they are going to allocate such ridiculously high numbers of new part numbers, that the allocation rate is a limiting factor; then they sure as heck need to be starting with a much larger range, otherwise they will run out in their first hour of trading.

You've yet to learn the difference between knowledge and expertise.

The knowledgeable are aware of theories, concepts and formulae.

The experienced know when to apply them.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
  • Comment on Re^3: Check randomly generated numbers have not been used before (knowledge vs. expertise)
  • Download Code

Replies are listed 'Best First'.
Re^4: Check randomly generated numbers have not been used before (knowledge vs. expertise)
by Anonymous Monk on Jun 22, 2014 at 13:33 UTC