作者:
Rushia (みけねこ的鼻屎)
2025-02-28 15:44:54https://leetcode.com/problems/shortest-common-supersequence
1092. Shortest Common Supersequence
給你兩個字串,求出他們的最短共同超序列,超序列定義成刪除其中的一些字元後可以
得到字串s。
思路:
1.先找出最長共通子序列,這個序列的元素是共同元素,所以這些元素不必出現在res
兩次。
2.透過回溯的方式可以還原出LCS字串,如果s1和s2的尾巴元素相同則一定是LCS,直接
append就可以,如果不同,透過檢查DP可以知道s1和s2的尾巴元素哪個不包含在LCS
裡面(把i刪了會比把j刪了長表示i不在LCS),那個不包含的元素我們需要將他加入超
序列。
3.因為是回溯還原的所以結果要再倒序一次。
Java Code: