0动态规划中等 LeetCode97. 交错字符串
生活随笔
收集整理的這篇文章主要介紹了
0动态规划中等 LeetCode97. 交错字符串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
97. 交錯字符串
描述
給定三個字符串 s1、s2、s3,請你幫忙驗證 s3 是否是由 s1 和 s2 交錯 組成的。
兩個字符串 s 和 t 交錯 的定義與過程如下,其中每個字符串都會被分割成若干 非空 子字符串:
s = s1 + s2 + … + sn
t = t1 + t2 + … + tm
|n - m| <= 1
交錯 是 s1 + t1 + s2 + t2 + s3 + t3 + … 或者 t1 + s1 + t2 + s2 + t3 + s3 + …
提示:a + b 意味著字符串 a 和 b 連接。
分析
不知道大家對不同路徑的題還有沒有印象,本題也可以利用其思想求解:
target 的每個字符都是從 s1(向下)或者 s2(向右)拿到的,所以只要判斷是否存在這條 target 路徑即可;
于是可定義 boolean[][] dp ,dp[i][j] 代表 s1 前 i 個字符與 s2 前 j 個字符拼接成 s3 的 i+j 字符,也就是存在目標路徑能夠到達 i ,j ;
作者:gousiqi
鏈接:https://leetcode-cn.com/problems/interleaving-string/solution/lei-si-lu-jing-wen-ti-zhao-zhun-zhuang-tai-fang-ch/
總結
以上是生活随笔為你收集整理的0动态规划中等 LeetCode97. 交错字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 移动光猫改桥接,开启telnet
- 下一篇: 九河 打结_舌头打结? 与视觉效果更快地