class Solution {
public int longestCommonSubsequence(String text1, String text2) {
int m = text1.length(),n = text2.length();
//将String字符串转为char数组之后效率会更高一些。
char[] c1 = text1.toCharArray();
char[] c2 = text2.toCharArray();
int[][] dp = new int[m+1][n+1];
for(int i = 1;i <= m;i++){
for(int j = 1;j <= n;j++){
// if(text1.charAt(i-1) == text2.charAt(j-1))
if(c1[i-1] == c2[j-1])
dp[i][j] = dp[i-1][j-1] + 1;
else
dp[i][j] = Math.max(dp[i-1][j],dp[i][j-1]);
}
}
return dp[m][n];
}
}
leetcode1143. 最长公共子序列
最新推荐文章于 2024-08-16 21:41:25 发布