Skip to content

Commit 8fc2003

Browse files
authored
Create 1754-largest-merge-of-two-strings.js
1 parent b0cff89 commit 8fc2003

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

1754-largest-merge-of-two-strings.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/**
2+
* @param {string} word1
3+
* @param {string} word2
4+
* @return {string}
5+
*/
6+
const largestMerge = function(word1, word2) {
7+
const stack1 = word1.split(''), stack2 = word2.split('')
8+
const arr = []
9+
10+
while(stack1.length && stack2.length) {
11+
const c1 = stack1[0], c2 = stack2[0]
12+
if(c1 > c2) {
13+
stack1.shift()
14+
arr.push(c1)
15+
} else if(c1 < c2) {
16+
stack2.shift()
17+
arr.push(c2)
18+
} else {
19+
if(stack1.join('') > stack2.join('')) {
20+
stack1.shift()
21+
arr.push(c1)
22+
} else {
23+
stack2.shift()
24+
arr.push(c2)
25+
}
26+
}
27+
}
28+
if(stack1.length) {
29+
arr.push(...stack1)
30+
}
31+
if(stack2.length) {
32+
arr.push(...stack2)
33+
}
34+
35+
return arr.join('')
36+
};

0 commit comments

Comments
 (0)