亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 邏輯算法 > 正文

PHP算法之PHP實現最長公共子串的問題

2020-03-22 17:06:36
字體:
來源:轉載
供稿:網友
本篇文章給大家帶來的內容是PHP算法之PHP實現最長公共子串的問題。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有所助。

最長公共子串問題:

給定兩個字符串,求出它們之間最長的相同子字符串的長度。

暴力解法思路:

1.以兩個字符串的每個字符為開頭,往后比較,這樣就會需要兩層循環

2.兩層循環內部的比較方式,也是一層循環,以當前字符為起點,往后遍歷比較,直到有不同就跳出這次循環,記錄下相同子字符串的長度

3.以最長的那次長度為準,因此也就是有三層循環。時間復雜度O(n^3)

longest=0for i=0;i str1.size;i++ for j=0;j str2.size;j++ m=i n=j length=0 while(m str1.size n str2.size) if str1[m]!=str2[n] break ++length longest=longest length ? length:longest

動態規劃法:

1.上面的比較過程中,以i和j為起點開始,如果遇到不同的停止后,下一次的開始位置會進行重復比較

2.動態規劃法-空間換時間,矩陣圖,可以把復雜度降至O(n^2)

3.str1是橫軸,str2是縱軸,table[i][j]就是以這兩個字符為結尾的最長子串的長度

4.table[0][j]可以推出,如果str1[0]==str2[j]的就為1,table[i][0]可以推出,如果str1[i]==str2[0] 就為1,其余為0

5.table[i][j] 如果str1[i]==str2[j] 可以由table[i-1][j-1]+1得到,不等就為0

假設兩個字符串分別為s和t,s[i]和t[j]分別表示其第i和第j個字符(字符順序從0開始),再令L[i, j]表示以s[i]和s[j]為結尾的相同子串的最大長度。應該不難遞推出L[i, j]和L[i+1,j+1]之間的關系,因為兩者其實只差s[i+1]和t[j+1]這一對字符。若s[i+1]和t[j+1]不同,那么L[i+1, j+1]自然應該是0,因為任何以它們為結尾的子串都不可能完全相同;而如果s[i+1]和t[j+1]相同,那么就只要在以s[i]和t[j]結尾的最長相同子串之后分別添上這兩個字符即可,這樣就可以讓長度增加一位。合并上述兩種情況,也就得到L[i+1,j+1]=(s[i]==t[j]?L[i,j]+1:0)這樣的關系。

代碼實例:

 ?php$str1= abcdef $str2= esdfdbcde1 //暴力解法function longestCommonSubstring1($str1,$str2){ $longest=0; $size1=strlen($str1); $size2=strlen($str2); for($i=0;$i $size1;$i++){ for($j=0;$j $size2;$j++){ $m=$i; $n=$j; $length=0; while($m $size1 $n $size2){ if($str1[$m]!=$str2[$n]) break; ++$length; ++$m; ++$n; $longest=$longest $length ? $length : $longest; return $longest;//矩陣動態規劃法function longestCommonSubstring2($str1,$str2){ $size1=strlen($str1); $size2=strlen($str2); $table=array(); for($i=0;$i $size1;$i++){ $table[$i][0]=$str1[$i]==$str2[0] ? 1:0; for($j=0;$j $size2;$j++){ $table[0][$j]=$str1[0]==$str2[$j] ? 1:0; for($i=1;$i $size1;$i++){ for($j=1;$j $size2;$j++){ if($str1[$i]==$str2[$j]){ $table[$i][$j]=$table[$i-1][$j-1]+1;  }else{ $table[$i][$j]=0; $longest=0; for($i=0;$i $size1;$i++){ for($j=0;$j $size2;$j++){ $longest=$longest $table[$i][$j] ? $table[$i][$j] : $longest; return $longest;$len=longestCommonSubstring1($str1,$str2);$len=longestCommonSubstring2($str1,$str2);var_dump($len);

以上就是本篇的全部內容,更多相關教程請訪問php編程從入門到精通全套視頻教程,php實戰視頻教程,bootstrap視頻教程!

以上就是PHP算法之PHP實現最長公共子串的問題的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美体内谢she精2性欧美| 隔壁老王国产在线精品| 国产做受69高潮| 国产精品丝袜视频| 欧美精品久久久久久久免费观看| 欧美在线视频免费观看| 国产97在线亚洲| 97精品国产97久久久久久| 国产成人亚洲综合91| 欧美精品www在线观看| 韩日精品中文字幕| 国产精品福利久久久| 8090理伦午夜在线电影| 欧美国产一区二区三区| 欧美精品激情blacked18| 中文字幕国产亚洲| 日韩亚洲欧美成人| 国产精品毛片a∨一区二区三区|国| 永久免费看mv网站入口亚洲| 亚洲一区二区久久久久久久| 亚洲а∨天堂久久精品9966| 亚洲一区久久久| 亚洲深夜福利在线| 亚洲男人天堂网站| 成人444kkkk在线观看| 久久亚洲精品一区| 亚洲精品国精品久久99热| 日日噜噜噜夜夜爽亚洲精品| 中文字幕亚洲综合久久筱田步美| 中文字幕一精品亚洲无线一区| 日韩小视频在线| 精品美女永久免费视频| 国产成人中文字幕| 日韩av资源在线播放| 91在线免费看网站| 亚洲色图狂野欧美| 亚洲精品美女视频| 久久久免费av| 日韩精品久久久久| 亚洲国产精品嫩草影院久久| 国产精品成人一区二区| 色777狠狠综合秋免鲁丝| 亚洲福利在线观看| 国产精品男人的天堂| 国产精品男人爽免费视频1| 久久成人亚洲精品| 色先锋资源久久综合5566| 久久精品成人动漫| 欧美韩国理论所午夜片917电影| 国产欧美久久一区二区| 久久九九全国免费精品观看| 欧美成人精品三级在线观看| 91精品国产91久久久| 日韩免费黄色av| 国产精品国产三级国产专播精品人| 国产精品网站入口| 亚洲免费小视频| 日本精品一区二区三区在线| 成人午夜高潮视频| 亚洲2020天天堂在线观看| 久久久久久成人| 亚洲女在线观看| 亚洲天堂成人在线视频| 色哟哟网站入口亚洲精品| 久久久久中文字幕| 国产精品欧美激情在线播放| 97久久久免费福利网址| 亚洲欧美国内爽妇网| 亚洲aⅴ日韩av电影在线观看| 亚洲国产成人精品电影| 91精品国产网站| 亚洲成人av片| 欧美丰满老妇厨房牲生活| 国产成人自拍视频在线观看| 97在线观看免费| 国产精品人成电影| 欧美成人一区二区三区电影| 亚洲成av人乱码色午夜| 欧美久久精品一级黑人c片| 激情成人在线视频| 在线观看国产精品91| 欧美有码在线观看视频| 精品视频在线观看日韩| 亚洲自拍小视频| 国产精品欧美激情在线播放| 久久久黄色av| 少妇高潮久久77777| 亚洲女人天堂视频| 亚洲天堂网站在线观看视频| 亚洲自拍欧美色图| 91久久久久久久| 国产精品视频久久| 欧美激情伊人电影| 日产精品99久久久久久| 精品久久久国产精品999| 日韩亚洲一区二区| 日韩激情av在线免费观看| 日韩有码视频在线| 成人亲热视频网站| 51ⅴ精品国产91久久久久久| 中文字幕日韩欧美精品在线观看| 高清欧美一区二区三区| 欧美一区二区三区免费视| 久久97久久97精品免视看| 国内精品久久久久久中文字幕| 亚洲综合在线中文字幕| 国产精品一区二区久久国产| 亚洲小视频在线| 国产999精品久久久| 久久99久久99精品中文字幕| 日韩黄色在线免费观看| 亚洲国产精品电影在线观看| 亚洲成av人片在线观看香蕉| 欧美大全免费观看电视剧大泉洋| 国模吧一区二区三区| 欧美日韩中文字幕在线视频| 日韩精品中文字幕有码专区| 激情av一区二区| 日本精品视频网站| 国产精品成人aaaaa网站| 欧美综合在线第二页| 色与欲影视天天看综合网| 国产精品日韩久久久久| 97在线免费观看视频| 亚洲在线视频福利| 日韩免费观看在线观看| 亚洲精品欧美极品| 国产精品扒开腿爽爽爽视频| 国产成人精品网站| 国产精品免费久久久| 97色在线观看免费视频| 久久免费视频在线| 美女视频黄免费的亚洲男人天堂| 欧美午夜激情视频| 久久成人亚洲精品| 91成人精品网站| 日韩电影中文字幕在线观看| 久久精品国产亚洲精品| 国产精品视频地址| 18性欧美xxxⅹ性满足| 在线视频精品一| 欧美在线观看网址综合| 日韩精品一二三四区| 91精品视频免费看| 欧美在线视频网站| 亚洲欧美激情一区| 黑人精品xxx一区| 欧美人成在线视频| 欧美巨大黑人极品精男| 国产精品毛片a∨一区二区三区|国| 久久夜精品va视频免费观看| 一区二区三区视频观看| 午夜精品久久久久久久99热浪潮| 国产精品亚洲自拍| 亚洲人成在线一二| 亚洲开心激情网| 日韩精品在线免费观看视频| 国产精品视频大全| 国产精品一区二区性色av| 亚洲国产成人久久综合一区| 亚洲品质视频自拍网| 久久久日本电影| 日韩电影大全免费观看2023年上| 欧美成人剧情片在线观看|