最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

LeetCode 1754. Largest Merge Of Two Strings

2023-04-16 10:05 作者:您是打尖兒還是住店呢  | 我要投稿

You are given two strings?word1?and?word2. You want to construct a string?merge?in the following way: while either?word1?or?word2?are non-empty, choose?one?of the following options:

  • If?word1?is non-empty, append the?first?character in?word1?to?merge?and delete it from?word1.

    • For example, if?word1 = "abc"?and?merge = "dv", then after choosing this operation,?word1 = "bc"?and?merge = "dva".

  • If?word2?is non-empty, append the?first?character in?word2?to?merge?and delete it from?word2.

    • For example, if?word2 = "abc"?and?merge = "", then after choosing this operation,?word2 = "bc"?and?merge = "a".

Return?the lexicographically?largest?merge?you can construct.

A string?a?is lexicographically larger than a string?b?(of the same length) if in the first position where?a?and?b?differ,

?a?has a character strictly larger than the corresponding character in?b.?

For example,?"abcd"?is lexicographically larger than?"abcc"?

because the first position they differ is at the fourth character, and?d?is greater than?c.

?

Example 1:

Input: word1 = "cabaa", word2 = "bcaaa"

Output: "cbcabaaaaa"

Explanation:?

One way to get the lexicographically largest merge is:?

- Take from word1: merge = "c", word1 = "abaa", word2 = "bcaaa"?

- Take from word2: merge = "cb", word1 = "abaa", word2 = "caaa"?

- Take from word2: merge = "cbc", word1 = "abaa", word2 = "aaa"?

- Take from word1: merge = "cbca", word1 = "baa", word2 = "aaa"?

- Take from word1: merge = "cbcab", word1 = "aa", word2 = "aaa"?

- Append the remaining 5 a's from word1 and word2 at the end of merge.

Example 2:

Input: word1 = "abcabc", word2 = "abdcaba"

Output: "abdcabcabcaba"

?


Constraints:

  • 1 <= word1.length, word2.length <= 3000

  • word1?and?word2?consist only of lowercase English letters.

Accepted

18,107

Submissions

39,373

Seen this question in a real interview before?

Yes

No

Companies

Related Topics

Similar Questions


Hide Hint 1

Build the result character by character. At each step, you choose a character from one of the two strings.

Hide Hint 2

If the next character of the first string is larger than that of the second string, or vice versa, it's optimal to use the larger one.

Hide Hint 3

If both are equal, think of a criteria that lets you decide which string to consume the next character from.

Hide Hint 4

You should choose the next character from the larger string.

Problems

Pick One

基本類似于歸并排序,只是第一次沒(méi)過(guò)的時(shí)候,卡在了當(dāng)2個(gè)字符相等的時(shí)候,

這時(shí)候需要去比對(duì)2個(gè)字符串的大小,先取大的字符串的信息;

Runtime:?40 ms, faster than?83.48%?of?Java?online submissions for?Largest Merge Of Two Strings.

Memory Usage:?42.4 MB, less than?99.13%?of?Java?online submissions for?Largest Merge Of Two Strings.


LeetCode 1754. Largest Merge Of Two Strings的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
全州县| 于田县| 新巴尔虎右旗| 滕州市| 民勤县| 四平市| 嵊州市| 封开县| 金乡县| 文水县| 彭阳县| 汶川县| 台北县| 伊春市| 民权县| 安吉县| 灵川县| 赣榆县| 屏东市| 瓮安县| 衢州市| 玉环县| 卢湾区| 蒲江县| 东阿县| 天峻县| 阜阳市| 辽中县| 布尔津县| 民和| 疏附县| 德惠市| 嘉义县| 扶沟县| 梅河口市| 和平区| 琼海市| 河南省| 白山市| 昆明市| 土默特右旗|