UNPKG

828 BJavaScriptView Raw
1var equalSorted = function(a, b) {
2 if (a.length !== b.length) {
3 return false;
4 }
5
6 for (var i = 0, length = a.length; i < length; i++) {
7 if (a[i] !== b[i]) {
8 return false;
9 }
10 }
11
12 return true;
13};
14
15var diffSorted = function(a, b) {
16 var added = [];
17 var removed = [];
18
19 var i = 0;
20 var j = 0;
21
22 while (i < a.length && j < b.length) {
23 if (a[i] === b[j]) {
24 i++;
25 j++;
26 } else if (a[i] < b[j]) {
27 removed.push(a[i]);
28 i++;
29 } else {
30 added.push(b[j]);
31 j++;
32 }
33 }
34
35 while (i < a.length) {
36 removed.push(a[i]);
37 i++;
38 }
39
40 while (j < b.length) {
41 added.push(b[j]);
42 j++;
43 }
44
45 return !added.length && !removed.length ? null : {
46 added: added,
47 removed: removed
48 };
49};
50
51
52exports.equalSorted = equalSorted;
53exports.diffSorted = diffSorted;