视频加载失败

课程

512 字
约 2 分钟

第08次上机实验题目(最长公共子序列问题)

算法设计与分析labs/lab08·更新于 2026-09-15

第08次上机实验题目(最长公共子序列问题)


利用动态规划算法实现

最长公共子序列

问题描述

给定一个序列,如果其中有些元素(也可能没有)被省略,则我们可以得到该序列的一个子序列。给定一个序列 X=x1,x2,,xnX = \langle x_1, x_2, \dots, x_n \rangle,另一个序列 ZZ 满足条件,存在严格递增索引序列 I=i1,i2,,ikI = \langle i_1, i_2, \dots, i_k \rangle,使得对于所有 j=1,2,,kj = 1, 2, \dots, k,有 xij=zjx_{i_j} = z_j,则称 Z=z1,z2,,zkZ = \langle z_1, z_2, \dots, z_k \rangleXX 的子序列。例如, Z=a,b,f,cZ = \langle a, b, f, c \rangleX=a,b,c,f,b,cX = \langle a, b, c, f, b, c \rangle 的子序列。

给定两个序列X和Y,问题是求出X和Y的最大长度公共子序列的长度。

输入格式

两个给定字符串

输出格式

两个序列最大长度公共子序列的长度。

样例输入

abcfbc abfcab

样例输出

4
Profile Image of the Author
Sonder
好想要技术
这是公告标题
这只是一个公告
分类
标签
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.7
文章许可
CC BY-NC-SA 4.0
文章目录