国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python實現求兩個字符串的最長公共子串方法

2020-02-15 22:28:18
字體:
來源:轉載
供稿:網友

如下所示:

# coding:utf-8'''求兩個字符串的最長公共子串思想:建立一個二維數組,保存連續位相同與否的狀態''' def getNumofCommonSubstr(str1, str2):  lstr1 = len(str1) lstr2 = len(str2) record = [[0 for i in range(lstr2+1)] for j in range(lstr1+1)] # 多一位 maxNum = 0   # 最長匹配長度 p = 0    # 匹配的起始位  for i in range(lstr1):  for j in range(lstr2):   if str1[i] == str2[j]:    # 相同則累加    record[i+1][j+1] = record[i][j] + 1    if record[i+1][j+1] > maxNum:     # 獲取最大匹配長度     maxNum = record[i+1][j+1]     # 記錄最大匹配長度的終止位置     p = i + 1 return str1[p-maxNum:p], maxNum  if __name__ == '__main__': str1 = raw_input() str2 = raw_input()  res = getNumofCommonSubstr(str1, str2) print res

輸出結果:字符串str1中的第一個最長公共子串(若有重復)

以上這篇python實現求兩個字符串的最長公共子串方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汪清县| 宕昌县| 襄汾县| 平罗县| 涞水县| 连州市| 西丰县| 祥云县| 平和县| 蓬安县| 那曲县| 北辰区| 应用必备| 盐边县| 安吉县| 明溪县| 景德镇市| 通道| 宝丰县| 华容县| 汽车| 广州市| 辽宁省| 金昌市| 诏安县| 平远县| 惠东县| 兰州市| 中西区| 永吉县| 乌拉特前旗| 浑源县| 孝义市| 清苑县| 雷山县| 卫辉市| 蓝山县| 犍为县| 安康市| 茌平县| 丹江口市|