请教一个菜级算法!

Matthew 2003-03-15 04:11:05
最近在《电脑报》上看到这么一题:
对于任意两个字符串S1和S2(字符串只限与26个小写的英文字母)的最长公共子序列LCS(S1,S2)是S1和S2中都出现的最长子序列。例如,tie是striped和tiger的最长公共子序列。
要求写出一个程序,用户输入s1和s2,计算并显示他们的最长公共子序列lcs(s1,s2)。
小弟不才,想赐教。谢谢!!!
...全文
39 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
rockandroll 2003-03-22
  • 打赏
  • 举报
回复
动态规划
jamesfangjing 2003-03-22
  • 打赏
  • 举报
回复
人家电脑报可是有奖征答,自己想想了,很简单的!
Matthew 2003-03-15
  • 打赏
  • 举报
回复
能完整点吗?
cool_ice 2003-03-15
  • 打赏
  • 举报
回复
两个循环!
ruanzheng13 2003-03-15
  • 打赏
  • 举报
回复
动态规划
skywebnet 2003-03-15
  • 打赏
  • 举报
回复
#define STR char *
STR lcs(STR s1 .STR s2)
{ STR basic;
STR p;
STR s
p=basic=new(strlen(strcmp(s1,s2)>0?s1:s2));
for(;*s1!='\0';s1++)
for(s=s2;*s!='\0';s++)
if(*s==*s1) *p++=*s;
*p='\0';

return basic;
}



About2Rain 2003-03-15
  • 打赏
  • 举报
回复
那么最优化的是O(?)
zalyer 2003-03-15
  • 打赏
  • 举报
回复
呵呵.比较简单了.

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧