MCPcopy Create free account
hub / github.com/davidshariff/computer-science / Merge

Function Merge

Sorting/MergeSort.js:3–43  ·  view source on GitHub ↗
(left, right)

Source from the content-addressed store, hash-verified

1(function() {
2
3 var Merge = function(left, right) {
4
5 var l = 0,
6 r = 0,
7 k = 0,
8 l_len = left.length,
9 r_len = right.length,
10 result = [];
11
12 // go through both arrays, comparing each element against the element in the adjacent array
13 while (l < l_len && r < r_len) {
14
15 if (left[l] < right[r]) {
16 result[k] = left[l];
17 l++;
18 }
19 else {
20 result[k] = right[r];
21 r++;
22 }
23
24 // move the pointer of the result array forward
25 k++;
26
27 }
28
29 // if one of the arrays is larger than the other, we may have some leftovers
30 while (l < l_len) {
31 result[k] = left[l];
32 l++;
33 k++;
34 }
35 while (r < r_len) {
36 result[k] = right[r];
37 r++;
38 k++;
39 }
40
41 return result;
42
43 },
44 MergeSort = function(inputArr) {
45
46 var len = inputArr.length,

Callers 1

MergeSortFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected