Böl ve yönet: Diziyi ikiye böl, sırala ve birleştir.
Diziyi sürekli ikiye bölen ve ardından sıralı bir şekilde birleştiren algoritmadır. Kararlı ve verimli bir algoritmadır.
mergeSort(arr, left, right):
if left < right:
mid = (left + right) / 2
mergeSort(arr, left, mid)
mergeSort(arr, mid+1, right)
merge(arr, left, mid, right)
merge(arr, left, mid, right):
// Sol ve sağ yarıları birleştir
// Küçük olanı önce al