单选题

下列归并算法程序中,横线处应该填入的是(    )

def merge_sort(array):

      if len(array) == 1:

            return array

      _________________________

      return merge(left, right)


def merge(left, right):

      left_index, right_index, merge_array = 0, 0, list()

      while left_index < len(left) and right_index < len(right):

            if left[left_index] <= right[right_index]:

                  merge_array.append(left[left_index])

                  left_index += 1

            else:

                  merge_array.append(right[right_index])

                  right_index += 1

      merge_array = merge_array + left[left_index:] + right[right_index:]

      return merge_array

A

left = merge_sort(array[:len(array)-1//2]) 

right = merge_sort(array[len(array)-1//2:])

B

left = merge_sort(array[len(array)//2-1])

right = merge_sort(array[len(array)//2:])

C

left = merge_sort(array[len(array)//2-1]) 

right = merge_sort(array[len(array)//2])

D

left = merge_sort(array[:len(array)//2])

right = merge_sort(array[len(array)//2:])

赣ICP备20007335号-2