题目

代码

class Solution {
public int longestCommonSubsequence(String s1, String s2) {
int[][] dp = new int[s1.length() + 1][s2.length() + 1];
for (int i = 0; i < s1.length(); ++i)
for (int j = 0; j < s2.length(); ++j)
if (s1.charAt(i) == s2.charAt(j)) dp[i + 1][j + 1] = 1 + dp[i][j];
else dp[i + 1][j + 1] = Math.max(dp[i][j + 1], dp[i + 1][j]);
return dp[s1.length()][s2.length()];
}
}
结果


本文提供了一段Java代码用于解决求解两个字符串的最长公共子序列问题。通过动态规划的方法,该算法能够有效地找出两个输入字符串之间的最长公共子序列长度。
713

被折叠的 条评论
为什么被折叠?



