Skip to content

Commit de31d38

Browse files
authored
JavaScript
1 parent f9114c0 commit de31d38

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

Merge Sort/merge_sort.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
const MergeSort = (arr, left, right) => {
2+
if (right - left == 1) return arr;
3+
let mid = Math.floor((left + right) / 2);
4+
arr = MergeSort(arr, left, mid);
5+
arr = MergeSort(arr, mid, right);
6+
let tempArray = Array(arr.length),
7+
i = left,
8+
j = mid,
9+
k = left;
10+
while (i < mid && j < right) {
11+
if (arr[i] <= arr[j]) tempArray[k++] = arr[i++];
12+
else tempArray[k++] = arr[j++];
13+
}
14+
while (i < mid) tempArray[k++] = arr[i++];
15+
while (j < right) tempArray[k++] = arr[j++];
16+
for (let t = left; t < right; t++) arr[t] = tempArray[t];
17+
return arr;
18+
};

0 commit comments

Comments
 (0)