public class Test_A24 { public static int longCOmmonSubsequence(String str1,String str2){ int m=str1.length(); int n=str2.length(); int[][] dp=new int[m+1][n+1]; for(int i=1;i<=m;i++){ for(int j=1;j<=n;j++){ if(str1.charAt(i-1)==str2.charAt(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]; } public static void main(String[] args){ String str1="ABCDDSA"; String str2="CCDDACFG"; System.out.println("最长公共子序列长度为:"+longCOmmonSubsequence(str1,str2)); } }
编写一个函数,计算两个字符串的最长公共子序列
最新推荐文章于 2024-11-06 11:05:01 发布