Test case details

Preparation Code

<script>   var arr = [];   for (var i = 0; i < 50000; i++) {     arr.push(i);   };   var half = Math.floor(arr.length / 2);   function getArr() {     return arr.slice(0);   };   function randomInt(max) {     return Math.floor(Math.random() * (max + 1));   }; </script>

Test cases

Test #1

var arr = getArr(); for (var i = 0; i < 1000; i++) {   arr.splice(half, 0, -1 - i); }

Test #2

var arr = getArr(); for (var i = 0; i < 1000; i++) {   arr.push(-1 - i); }

Test #3

var arr = getArr(); for (var i = 0; i < 1000; i++) {   arr.unshift(-1 - i); }