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

python通過BF算法實現(xiàn)關(guān)鍵詞匹配的方法

 更新時間:2015年03月13日 12:08:13   作者:chongq  
這篇文章主要介紹了python通過BF算法實現(xiàn)關(guān)鍵詞匹配的方法,實例分析了BF算法的原理與Python實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了python通過BF算法實現(xiàn)關(guān)鍵詞匹配的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

復(fù)制代碼 代碼如下:
#!/usr/bin/python
# -*- coding: UTF-8
# filename BF
import time
"""
t="this is a big apple,this is a big apple,this is a big apple,this is a big apple."
p="apple"
"""
t="為什么叫向量空間模型呢?其實我們可以把每個詞給看成一個維度,而詞的頻率看成其值(有向),即向量,這樣每篇文章的詞及其頻率就構(gòu)成了一個i維空間圖,兩個文檔的相似度就是兩個空間圖的接近度。假設(shè)文章只有兩維的話,那么空間圖就可以畫在一個平面直角坐標系當(dāng)中,讀者可以假想兩篇只有兩個詞的文章畫圖進行理解。"
p="讀者"
i=0
count=0
start=time.time()
while (i <=len(t)-len(p)):
    j=0
    while (t[i]==p[j]):
                i=i+1
                j=j+1
        if j==len(p):
            break        
        elif (j==len(p)-1):
            count=count+1
    else:
        i=i+1
        j=0
print count
print time.time()-start

 
算法思想:目標串t與模式串p逐詞比較,若對應(yīng)位匹配,則進行下一位比較;若不相同,p右移1位,從p的第1位重新開始比較。

算法特點:整體移動方向:可認為在固定的情況下,p從左向右滑動;匹配比較時,從p的最左邊位開始向右逐位與t串中對應(yīng)位比較。p的滑動距離為1,這導(dǎo)致BF算法匹配效率低(相比其他算法,如:BM,KMP,滑動沒有跳躍)。

該算法的時間復(fù)雜度為O(len(t)*len(p)),空間復(fù)雜度為O(len(t)+len(p))

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

相關(guān)文章

  • Python中的xml與dict的轉(zhuǎn)換方法詳解

    Python中的xml與dict的轉(zhuǎn)換方法詳解

    這篇文章主要介紹了Python中的xml與dict的轉(zhuǎn)換方法詳解,xml 是指可擴展標記語言,一種標記語言類似html,作用是傳輸數(shù)據(jù),而且不是顯示數(shù)據(jù)。可以自定義標簽,需要的朋友可以參考下
    2023-07-07
  • Python通過keyboard庫實現(xiàn)模擬和監(jiān)聽鍵盤

    Python通過keyboard庫實現(xiàn)模擬和監(jiān)聽鍵盤

    這篇文章主要為大家詳細介紹了Python如何通過keyboard庫實現(xiàn)模擬和監(jiān)聽鍵盤,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2024-10-10
  • python實現(xiàn)本地圖片轉(zhuǎn)存并重命名的示例代碼

    python實現(xiàn)本地圖片轉(zhuǎn)存并重命名的示例代碼

    今天小編就為大家分享一篇python實現(xiàn)本地圖片轉(zhuǎn)存并重命名的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python通過30秒就能學(xué)會的漂亮短程序代碼(過程全解)

    Python通過30秒就能學(xué)會的漂亮短程序代碼(過程全解)

    這篇文章主要介紹了Python之30秒就能學(xué)會的漂亮短程序代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-10-10
  • django中ORM模型常用的字段的使用方法

    django中ORM模型常用的字段的使用方法

    這篇文章主要介紹了django中ORM模型常用的字段的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • python數(shù)據(jù)預(yù)處理方式 :數(shù)據(jù)降維

    python數(shù)據(jù)預(yù)處理方式 :數(shù)據(jù)降維

    今天小編就為大家分享一篇python數(shù)據(jù)預(yù)處理方式 :數(shù)據(jù)降維,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*

    jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*

    本文主要介紹了jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python初學(xué)者必備的文件讀寫指南

    Python初學(xué)者必備的文件讀寫指南

    今天給大家?guī)淼氖顷P(guān)于Python基礎(chǔ)的相關(guān)知識,文章圍繞著Python文件讀寫展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Python常見字典內(nèi)建函數(shù)用法示例

    Python常見字典內(nèi)建函數(shù)用法示例

    這篇文章主要介紹了Python常見字典內(nèi)建函數(shù)用法,結(jié)合具體實例形式分析了Python字典內(nèi)建函數(shù)實現(xiàn)針對字典的長度、hash運算、鍵值對遍歷、獲取、計算等相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • python與pycharm有何區(qū)別

    python與pycharm有何區(qū)別

    在本篇文章里小編給大家整理了關(guān)于pycharm與python的區(qū)別相關(guān)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2020-07-07

最新評論

城固县| 泗水县| 南阳市| 崇仁县| 广河县| 察哈| 诸暨市| 子长县| 湘阴县| 银川市| 钟山县| 西吉县| 穆棱市| 电白县| 石泉县| 化隆| 凭祥市| 偏关县| 浦东新区| 怀柔区| 神池县| 敦煌市| 天津市| 大荔县| 新安县| 津市市| 大冶市| 方正县| 闻喜县| 墨脱县| 东方市| 通城县| 遵化市| 天柱县| 三河市| 黎平县| 陈巴尔虎旗| 阿城市| 华坪县| 金平| 招远市|