title: Array cutting and merging in C#
body: <p>I am trying to optimize a snake like game made in C# where I have an ArrayList that contains all the snake body parts stored. I need to be able to cut this ArrayList like if it was a deck of cards, where I would take the top part of the deck and make it the bottom one. This should help clarify.</p>
  
  <pre><code>01234 =&gt; 01 234 =&gt; 234 01 =&gt; 23401
  </code></pre>
  
  <p>This ArrayList can be as big as 300 elements and I need to make this operation as cheap as possible since this game is for mobile devices.</p>