在右侧编辑器中的 Begin-End 区间补充代码,根据归并排序的算法思想完成mergeSort方法,从而实现对无序表的排序。
时间: 2023-03-14 18:46:11 浏览: 233
MergeSort:归并排序算法的实现
Begin
def mergeSort(arr):
if len(arr) >1:
mid = len(arr)//2 #Finding the mid of the array
L = arr[:mid] # Dividing the array elements
R = arr[mid:] # into 2 halves
mergeSort(L) # Sorting the first half
mergeSort(R) # Sorting the second half
i = j = k = 0
# Copy data to temp arrays L[] and R[]
while i < len(L) and j < len(R):
if L[i] < R[j]:
arr[k] = L[i]
i+= 1
else:
arr[k] = R[j]
j+= 1
k+= 1
# Checking if any element was left
while i < len(L):
arr[k] = L[i]
i+= 1
k+= 1
while j < len(R):
arr[k] = R[j]
j+= 1
k+= 1
End我不太懂你的问题,不过我可以告诉你归并排序是一种有效的排序算法,它将数组分成两半,然后将它们按顺序归并,以实现对无序表的排序。
阅读全文