Question: help add a local comparsion counter to the merge sort below def merge(numbers, i, j, k): merged_size = k - i + 1 merged_numbers =

help add a local comparsion counter to the merge sort below

def merge(numbers, i, j, k):


merged_size = k - i + 1

merged_numbers = []

for l in range(merged_size):

merged_numbers.append(0)


merge_pos = 0


left_pos = i

right_pos = j + 1


while left_pos <= j and right_pos <= k:

if numbers[left_pos] < numbers[right_pos]:

merged_numbers[merge_pos] = numbers[left_pos]

left_pos = left_pos + 1

else:

merged_numbers[merge_pos] = numbers[right_pos]

right_pos = right_pos + 1

merge_pos = merge_pos + 1


while left_pos <= j:

merged_numbers[merge_pos] = numbers[left_pos]

left_pos = left_pos + 1

merge_pos = merge_pos + 1


while right_pos <= k:

merged_numbers[merge_pos] = numbers[right_pos]

right_pos = right_pos + 1

merge_pos = merge_pos + 1


merge_pos = 0

while merge_pos < merged_size:

numbers[i + merge_pos] = merged_numbers[merge_pos]

merge_pos = merge_pos + 1



def merge_sort_recursive(numbers, i, k):

if i < k:

j = (i + k) // 2

merge_sort_recursive(numbers, i, j)

merge_sort_recursive(numbers, j + 1, k)

merge(numbers, i, j, k)


def merge_sort(numbers):

merge_sort_recursive(numbers, 0, len(numbers)-1)


Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!