title: How do I shuffle a VecDeque?
body: <p>I can shuffle a regular vector quite simply like this:</p>
  
  <pre><code>extern crate rand;
  use rand::Rng;
  
  fn shuffle(coll: &amp;mut Vec&lt;i32&gt;) {
      rand::thread_rng().shuffle(coll);
  }
  </code></pre>
  
  <p>The problem is, my code now requires the use of a <code>std::collections::VecDeque</code> instead, which causes this code to not compile.</p>
  
  <p>What's the simplest way of getting around this?</p>