title: Is this still TRUE randomization?
body: <p>this is the case:</p>
  
  <p>my programm requires X random elements of an Y-length array.
  X is always lower than Y</p>
  
  <p>so what i do:
  WAY#1:</p>
  
  <pre><code>1. shuffle the array
  2. get the X elements from index 0 to X-1
  3. (back to step 1) repeat like 2.000.000 times or more.
  </code></pre>
  
  <p>since shuffling the array takes lot of resources i want to make my programme faster.
  i thought of something like this:</p>
  
  <p>WAY#2:</p>
  
  <pre><code>1. find out how often X fits into Y (asume X = 6, and X = 20)
  2. shuffle the array
  3a. get the X elements from index 0 to 5
  3b. get the X elements from index 6 to 11
  3c. get the X elements from index 12 to 17
  (index 18 and 19 will not be used in this case)
  4. (back to step 2) repeat like 2.000.000 times or more.
  </code></pre>
  
  <p>After some trials i get with both ways the expected result to 3rd decimal. which would be absolutely fine for my purpose.</p>
  
  <p>WAY#2 is 25-30% faster than WAY#1</p>
  
  <p>What do you think? 
  Should i accept a tiny adulteration for higher performance or is it just bad habit and should be avoided?</p>