第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

查找兩個(gè)字符串之間的公共子字符串

查找兩個(gè)字符串之間的公共子字符串

不負(fù)相思意 2019-09-21 14:29:12
我想比較2個(gè)字符串并保持匹配,在比較失敗的地方分開(kāi)。因此,如果我有2個(gè)字符串-string1 = applesstring2 = applesesanswer = apples另一個(gè)示例,因?yàn)樽址梢杂卸鄠€(gè)單詞。string1 = apple pie availablestring2 = apple piesanswer = apple pie我敢肯定有一種簡(jiǎn)單的Python方式可以做到這一點(diǎn),但我無(wú)法解決,感謝任何幫助和解釋。
查看完整描述

3 回答

?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超6個(gè)贊

它稱為最長(zhǎng)公共子串問(wèn)題。在這里,我提出了一個(gè)簡(jiǎn)單,易于理解但效率低下的解決方案。為大型字符串生成正確的輸出將花費(fèi)很長(zhǎng)時(shí)間,因?yàn)樵撍惴ǖ膹?fù)雜度為O(N ^ 2)。


def longestSubstringFinder(string1, string2):

    answer = ""

    len1, len2 = len(string1), len(string2)

    for i in range(len1):

        match = ""

        for j in range(len2):

            if (i + j < len1 and string1[i + j] == string2[j]):

                match += string2[j]

            else:

                if (len(match) > len(answer)): answer = match

                match = ""

    return answer


print longestSubstringFinder("apple pie available", "apple pies")

print longestSubstringFinder("apples", "appleses")

print longestSubstringFinder("bapples", "cappleses")

產(chǎn)量


apple pie

apples

apples


查看完整回答
反對(duì) 回復(fù) 2019-09-21
?
莫回?zé)o

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊

為了完整起見(jiàn),difflib在標(biāo)準(zhǔn)庫(kù)中提供了許多序列比較實(shí)用程序。例如find_longest_match,當(dāng)在字符串上使用時(shí),它會(huì)找到最長(zhǎng)的公共子字符串。使用示例:


from difflib import SequenceMatcher


string1 = "apple pie available"

string2 = "come have some apple pies"


match = SequenceMatcher(None, string1, string2).find_longest_match(0, len(string1), 0, len(string2))


print(match)  # -> Match(a=0, b=15, size=9)

print(string1[match.a: match.a + match.size])  # -> apple pie

print(string2[match.b: match.b + match.size])  # -> apple pie


查看完整回答
反對(duì) 回復(fù) 2019-09-21
  • 3 回答
  • 0 關(guān)注
  • 991 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)