private void mergeRange(int[] nums, int left, int mid, int right, int[] tempArray) {         int i = left;         int j = mid + 1;         int tempIndex = 0;         while (i <= mid && j <= right) {             if (nums[i] < nums[j]) {                 tempArray[tempIndex++] = nums[i++];             } else {                 tempArray[tempIndex++] = nums[j++];             }         }         while (i <= mid) {             tempArray[tempIndex++] = nums[i++];         }         while (j <= right) {             tempArray[tempIndex++] = nums[j++];         }         tempIndex = 0;         for (int k = left; k <= right; ++k) {             nums[k] = tempArray[tempIndex++];         }     } 可以复用tempArray,所以是O(n)空间复杂度