First implementation, insertion sort, use two pointers