Select Page

# Program for Recursive Merge Sort using Python

by | Jun 20, 2021 | Python Programs

Home » Python » Python Programs » Program for Recursive Merge Sort using Python

## Introduction

In previous article we understood the python code for merge sort. Now we will understand the recursive implementation of merge sort.

The last element in the given array is treated as the pivot element

## Program

```def merge_arr(left, right):
if not len(left) or not len(right):
return left or right
output = []
x , y = 0, 0
while (len(output) < len(left) + len(right)):
if left[x] < right[y]:
output.append(left[x])
x += 1
else:
output.append(right[y])
y += 1
if x == len(left) or y == len(right):
output.extend(left[x:] or right[y:])
break
return output

def sort(arr):
if len(arr) < 2:
return arr
mid = int(len(arr)/2)
left = sort(arr[:mid])
right = sort(arr[mid:])
return merge_arr(left, right)

ip_arr = [12, 11, 13, 5, 6, 7]
print("The sorted array is :")
print(sort(ip_arr))
```

## Output ## Author

• A Full Stack Developer with 10+ years of experience in technical content creation.

• 