黑马程序员技术交流社区
标题:
最长公共子序列
[打印本页]
作者:
自信boy
时间:
2016-8-20 20:56
标题:
最长公共子序列
题目描述
对于两个字符串,请设计一个高效算法,求他们的最长公共子序列的长度,这里的最长公共子序列定义为有两个序列U1,U2,U3...Un和V1,V2,V3...Vn,其中Ui<Ui+1,Vi<Vi+1。且A[Ui] == B[Vi]。
给定两个字符串
A
和
B
,同时给定两个串的长度
n
和
m
,请返回最长公共子序列的长度。保证两串长度均小于等于300。
测试样例:
"1A2C3D4B56",10,"B1D23CA45B6A",12返回:6
作者:
abcdefg11
时间:
2016-8-20 23:10
m<n思路如下
char a[n],前m赋值为string,后面用asc码表非字符串内的任意某字符填充
char b[n]
for k=0~n{
for i=1~n
ci= a[i+k]-bi
for j=1~m
cj=0则count+1
temp=count
}
max用来记录最大的temp值
需要控制数组越界,越界不要了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2