swapHalf method
Reverses the order of the first half and the second half of array
in place.
Example:
1,2,3,4,5,6,7,8,9,10
=> 5,4,3,2,1,10,9,8,7,6
.
See also method swap.
Implementation
static void swapHalf(Float64List array) {
int right;
double temp;
int halfsize = array.length ~/ 2;
// reverse 1st half of array
for (int i = 0; i < halfsize ~/ 2; i++) {
right = halfsize - 1 - i;
temp = array[i];
array[i] = array[right];
array[right] = temp;
}
// reverse 2nd half of array
for (int i = 0; i < halfsize ~/ 2; i++) {
right = array.length - 1 - i;
temp = array[halfsize + i];
array[halfsize + i] = array[right];
array[right] = temp;
}
}