最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python字符串匹配算法KMP實(shí)例

 更新時(shí)間:2015年07月18日 17:29:40   作者:鑒客  
這篇文章主要介紹了Python字符串匹配算法KMP實(shí)現(xiàn)方法,實(shí)例分析了Python針對(duì)字符串操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了Python字符串匹配算法KMP。分享給大家供大家參考。具體如下:

#!/usr/bin/env python
#encoding:utf8
def next(pattern):
p_len = len(pattern)
pos = [-1]*p_len
j = -1
for i in range(1, p_len):
while j > -1 and pattern[j+1] != pattern[i]:
j = pos[j]
if pattern[j+1] == pattern[i]:
j = j + 1
pos[i] = j
return pos
def kmp(ss, pattern):
pos = next(pattern)
ss_len = len(ss)
pattern_len = len(pattern)
j = -1
for i in range(ss_len):
while j > -1 and pattern[j+1] != ss[i]:
j = pos[j]
if pattern[j+1] == ss[i]:
j = j + 1
if j == pattern_len-1:
print 'matched @: %s' % str(i-pattern_len+1)
j = pos[j]
kmp(u'上海自來(lái)水來(lái)自海上海', u'上海')

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python argparse模塊使用方法解析

    Python argparse模塊使用方法解析

    這篇文章主要介紹了Python argparse模塊使用方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • 基于Python如何使用AIML搭建聊天機(jī)器人

    基于Python如何使用AIML搭建聊天機(jī)器人

    AIML,全名為Artificial Intelligence Markup Language(人工智能標(biāo)記語(yǔ)言),是一種創(chuàng)建自然語(yǔ)言軟件代理的XML語(yǔ)言,是由Richard Wallace和世界各地的自由軟件社區(qū)在1995年至2002年發(fā)明的,通過(guò)本文給大家介紹基于Python如何使用AIML搭建聊天機(jī)器人,需要的朋友一起學(xué)習(xí)
    2016-01-01
  • DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫(kù)sqlite3)

    DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫(kù)sqlite3)

    今天小編就為大家分享一篇DJango的創(chuàng)建和使用詳解(默認(rèn)數(shù)據(jù)庫(kù)sqlite3),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • Python對(duì)比校驗(yàn)神器deepdiff庫(kù)使用詳解

    Python對(duì)比校驗(yàn)神器deepdiff庫(kù)使用詳解

    deepdiff模塊常用來(lái)校驗(yàn)兩個(gè)對(duì)象是否一致,包含3個(gè)常用類,DeepDiff,DeepSearch和DeepHash,其中DeepDiff最常用,可以對(duì)字典,可迭代對(duì)象,字符串等進(jìn)行對(duì)比,使用遞歸地查找所有差異,本文給大家講解Python對(duì)比校驗(yàn)神器deepdiff庫(kù),感興趣的朋友一起看看吧
    2023-04-04
  • python實(shí)現(xiàn)udp聊天窗口

    python實(shí)現(xiàn)udp聊天窗口

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)udp聊天窗口,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python調(diào)試工具Birdseye的使用教程

    python調(diào)試工具Birdseye的使用教程

    調(diào)試是寫出良好代碼的必備條件,Birdseye是一款優(yōu)秀的用于python的調(diào)試工具,本文簡(jiǎn)單的介紹了Birdseye的使用方法
    2021-05-05
  • python快速進(jìn)階利用Tkinter定制一個(gè)信息提示框

    python快速進(jìn)階利用Tkinter定制一個(gè)信息提示框

    這篇文章主要介紹了python快速進(jìn)階利用Tkinter定制一個(gè)信息提示框,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • python3.4用函數(shù)操作mysql5.7數(shù)據(jù)庫(kù)

    python3.4用函數(shù)操作mysql5.7數(shù)據(jù)庫(kù)

    這篇文章主要為大家詳細(xì)介紹了python3.4用函數(shù)操作mysql5.7數(shù)據(jù)庫(kù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)

    關(guān)于python中readlines函數(shù)的參數(shù)hint的相關(guān)知識(shí)總結(jié)

    今天給大家?guī)?lái)的是關(guān)于Python函數(shù)的相關(guān)知識(shí),文章圍繞著python中readlines函數(shù)的參數(shù)hint展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Python使用Flask編寫一個(gè)網(wǎng)站的代碼指南

    Python使用Flask編寫一個(gè)網(wǎng)站的代碼指南

    使用Flask編寫一個(gè)網(wǎng)站是一個(gè)相對(duì)簡(jiǎn)單且有趣的過(guò)程,Flask是一個(gè)用Python編寫的輕量級(jí)Web應(yīng)用框架,它易于上手,同時(shí)也非常強(qiáng)大,適合構(gòu)建從簡(jiǎn)單的博客到復(fù)雜的Web應(yīng)用的各種項(xiàng)目,以下是一個(gè)使用Flask編寫簡(jiǎn)單網(wǎng)站的指南,包括代碼示例,需要的朋友可以參考下
    2024-11-11

最新評(píng)論

靖宇县| 嘉峪关市| 乐业县| 工布江达县| 德安县| 延庆县| 望奎县| 长寿区| 绥江县| 古浪县| 阿拉尔市| 开平市| 大同县| 四子王旗| 和政县| 上蔡县| 宁陕县| 兰州市| 阳江市| 长丰县| 霍州市| 南皮县| 河南省| 嘉峪关市| 房山区| 囊谦县| 门源| 东台市| 沾益县| 敦化市| 宿州市| 盐城市| 廊坊市| 文成县| 临城县| 江北区| 曲阳县| 盱眙县| 宁蒗| 渭南市| 韶关市|