php获得两个字符串公共最大子串的函数
<?php
header("Content-type: text/html; charset=utf-8");
function search($str1,$str2)
{
$i=$j=$k=$a=null;
$m=strlen($str1);
$n=strlen($str2);
$index=0;
$maxlen=0;
$flag=0;
for ($i=0;$i<$n;$i++)
{
$k=$i;
for ($j=0;$j<$m;$j++)
{
$a = 0;
$flag = 0;
$jk=$j;
$kk=$k;
while($jk<=$m&&$str1[$kk]==$str2[$jk])
{
$kk++;$jk++;$a++;
$flag = 1;
}
if($flag==1)
{
if($a>$maxlen)
{
$maxlen = $a;
$index = $jk-$a;//匹配的首项
}
}
}
}
echo "匹配最大长度为:".$maxlen.",匹配结果为:";
for(;$maxlen>0;$maxlen--)
{
echo $str2[$index++];
}
echo "<br>";
}
search("ddaacffd","dddaacffd");
?>
posted on 2015-08-03 17:54 liuwenbohhh 阅读(475) 评论(0) 编辑 收藏 举报
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步