【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列 输入描述: 输入: "1A2C3D4B56","B1D23A456A" 输出描述: 输出: 6 输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6
区块链毕设网qklbishe.com为您提供问题的解答
【求最长公共子序列的长度】
问题描述:
给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列
输入描述:
输入: "1A2C3D4B56","B1D23A456A"
输出描述:
输出: 6
输入样例:
1A2C3D4E56 A1B2345C6D
输出样例:
6
public class Main { public int longestCommonSubsequence(String text1, String text2) { if(text1.length() == 0 || text2.length() == 0 || text1 == null || text2 == null){ return 0; } char[] s1 = text1.toCharArray(); char[] s2 = text2.toCharArray(); int M = text1.length(); int N = text2.length(); int[][] dp = new int[M][N]; dp[0][0] = s1[0] == s2[0] ? 1 : 0; for (int j = 1; j < N; j++) { dp[0][j] = s1[0] == s2[j] ? 1:dp[0][j-1]; } for (int i = 1; i < M; i++) { dp[i][0] = s1[i] == s2[0] ? 1: dp[i-1][0]; } for (int i = 1; i < M; i++) { for (int j = 1; j < N; j++) { int p1 = dp[i][j-1]; int p2 = dp[i - 1][j]; int p3 = s1[i] == s2[j] ? (1 + dp[i - 1][ j - 1]) : 0; dp[i][j] = Math.max(p1,Math.max(p2,p3)); } } return dp[M-1][N-1]; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()){ String s1 = sc.nextLine(); String s2 = sc.nextLine(); Main main = new Main(); System.out.println(main.longestCommonSubsequence(s1, s2)); } } }
05:15
以上就是关于问题【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列
输入描述: 输入: "1A2C3D4B56","B1D23A456A"
输出描述: 输出: 6
输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6 的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训
从业7年-专注一级市场
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列
输入描述: 输入: "1A2C3D4B56","B1D23A456A"
输出描述: 输出: 6
输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6
微信:btc9767
TELEGRAM :https://t.me/btcok9
具体资料介绍
web3的一级市场千万收益的逻辑
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列
输入描述: 输入: "1A2C3D4B56","B1D23A456A"
输出描述: 输出: 6
输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6
进群点我
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列
输入描述: 输入: "1A2C3D4B56","B1D23A456A"
输出描述: 输出: 6
输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 【求最长公共子序列的长度】 问题描述: 给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在 一个最长的公共子序列 输入描述: 输入: "1A2C3D4B56","B1D23A456A" 输出描述: 输出: 6 输入样例: 1A2C3D4E56 A1B2345C6D 输出样例: 6