// declare a variable for the next element to consider in the first array
// declare a variable for the next element to consider in the second array
// declare a variable for the next open position in a
// as long as both indices are smaller than the length of the temporary array,
// move the smaller element into a, incrementing the appropriate indices
// note that only one of the two while loops
// below is executed
// copy any remaining entries of the first array into a
// copy any remaining entries of the second half into a
}