摘要:
思路: 经典dp (1)找状态,从后到前,目标:result[i][j]表示,A[i]与B[j]的最长公共子序列(i<=n,j<=m)。 (2)确定状态转移方程,二种决策(a[i] b[i]一样, a[i] b[i]不一样) (3)复杂度为O(lenA*lenB),此种解法为递推,从前到后,使用循环 阅读全文
摘要:
思路: 默认数组第一个是prefix,然后循环比较数组中的每一个字符串,直到不相等,返回substring即可,返回的substring一定是最长的公共前缀。 注:判断数组为空或者数组中有空字符串 时间复杂度:O(第一个字符串长度^2),java耗时1563 ms。 阅读全文