CS 3343/3341 Analysis of Algorithms |
Divide and Conquer:
Merge Sort |
Mergesort, in three steps: Divide: Divide the input sequence to be sorted into two equal sized subsequences. Conquer: Sort the two subsequences recursively using mergesort. Combine: Merge the two sorted subsequences to produce the sorted answer. |
MergeSort (a, p, r)
if p < r
q = floor((p+r)/2)
MergeSort(A, p, q)
MergeSort(A, q+1, r)
Merge(A, p, q, r)
|

