/*********** * merge.c * * Nate's code , edited by Jim in class ***********/ #include #include #define half_max_size 10000; int temp1[half_max_size]; int temp2[half_max_size]; void printArray(int array[], int size){ // arr[low] is the first element to print // arr[high] is the last element to print int i; printf("["); for(i=low; i 1){ left_size = size / 2; left_array = array; printf(" left array: "); printArray(left_array, left_size); right_size = size - left_size; right_array = array + left_size; printf(" right array: "); printArray(right_array, right_size); sort(left_array, left_size); sort(right_array, right_size); merge(left_array, left_size, right_array, right_size, array, size); printf("\n"); } }; int main(){ int size = 7; int arrary[] = {1,4,2,6,9,8,5}; printf("main - initial array : "); printArray(array, size); sort(array, size); printf("main - sorted array : "); printArray(array, size); return 0; };