insertion sort, shuffle