leetcode - 97.Interleaving String
2017-03-20 14:15
453 查看
Interleaving String
Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2.For example,
Given:
s1 =
"aabcc",
s2 =
"dbbca",
When s3 =
"aadbbcbcac", return
true.
When s3 =
"aadbbbaccc", return
false.
Solution:
public boolean isInterleave(String s1, String s2, String s3) { if (s1.length() + s2.length() != s3.length()) return false; boolean[][] matrix = new boolean[s2.length() + 1][s1.length() + 1]; matrix[0][0] = true; for (int i = 1; i < matrix[0].length; i++) { matrix[0][i] = matrix[0][i - 1] && (s1.charAt(i - 1) == s3.charAt(i - 1)); } for (int i = 1; i < matrix.length; i++) { matrix[i][0] = matrix[i - 1][0] && (s2.charAt(i - 1) == s3.charAt(i - 1)); } for (int i = 1; i < matrix.length; i++) { for (int j = 1; j < matrix[0].length; j++) { matrix[i][j] = (matrix[i - 1][j] && (s2.charAt(i - 1) == s3.charAt(i + j - 1))) || (matrix[i][j - 1] && (s1.charAt(j - 1) == s3.charAt(i + j - 1))); } } return matrix[s2.length()][s1.length()]; }
相关文章推荐
- Leetcode 97. Interleaving String 交错字符判别 解题报告
- leetcode 97. Interleaving String
- leetcode-97. Interleaving String
- Leetcode 97. Interleaving String
- leetCode 97. Interleaving String
- LeetCode--97. Interleaving String
- LeetCode 97. Interleaving String(字符串交织)
- Leetcode 97. Interleaving String
- [leetcode] 97.Interleaving String
- [leetcode] 97. Interleaving String
- leetcode: 97. Interleaving String
- LeetCode --- 97. Interleaving String
- leetcode 97. Interleaving String(字符串交错出现) DFS深度优先遍历 + 很明显很经典的DP动态规划做法
- Leetcode 97. Interleaving String
- LeetCode 97. Interleaving String
- [leetcode] 97. Interleaving String 解题报告
- [leetcode]97. Interleaving String(Java)
- [LeetCode]97.Interleaving String
- Leetcode 97. Interleaving String
- [Leetcode]97. Interleaving String @python