999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于散列函數的模式匹配算法

2015-07-27 08:18:10周慶勛青島廣播電視大學技術裝備處山東青島266012
山東工業技術 2015年21期

周慶勛(青島廣播電視大學、技術裝備處,山東 青島 266012)

基于散列函數的模式匹配算法

周慶勛
(青島廣播電視大學、技術裝備處,山東 青島 266012)

本文簡要介紹了利用散列函數進行模式匹配的原理,散列函數的構造,給出了基于散列函數的模式匹配算法。

散列函數;模式匹配;算法

0 引言

模式匹配是數據結構中字符串的一種基本運算,給定一個子串,要求在某個字符串中找出與該子串相同的所有子串,這就是模式匹配。

假設P是給定的子串,T是待查找的字符串,要求從T中找出與P相同的所有子串,這個問題成為模式匹配問題。P稱為模式,T稱為目標。如果T中存在一個或多個模式為P的子串,就給出該子串在T中的位置,稱為匹配成功;否則匹配失敗。

模式匹配算法是文本處理領域中比較重要的算法,一個簡單、高效率的模式匹配算法對提高和模式匹配有關的軟件的效率有很大幫助,本文介紹一種基于散列函數的模式匹配算法,該算法簡單,易于理解且具有較高的效率。

1 原理

令模式記為x=x[0..m-1],長度為m,文本串記為y=y[0..n-1],長度為n。令算列函數:hash(x[0..m-1]=x[0]*2m-1+x[1]*2m-2+…+x[m-1]) mod q(式中q為系統最大整型值)

該散列函數具有以下特點:

1.1 易于計算

1.2 易于從hash(y[i,i+m-1])計算hash(y[i+1,i+m])

hash(y[i+1,i+m])=(( hash(y[i,i+m-1])-y[i]*2m-1)*2+y[i+m]) mod q

為提高運算速度,乘以2的操作可通過左移1位實現,對于給定的模式x,2m-1是一個常數。在一個模式匹配的過程中,若模式x在文本y中出現的位置為i,則必定hash(x)=hash(y[i,i+m-1]),但要注意,hash(x)=hash(y[i,i+m-1])時,x[0..m]和y[i,i+m-1]未必完全匹配。因此,模式匹配的過程就是hash(x)=hash(y[i,i+m-1])(其中i=0,1,…,n-m)逐個比較的過程,若hash(x)和hash(y[i,i+m-1]),則將x[0..m]和y[i,i+m-1]逐字符比較,若完全相等,則模式匹配的位置為i,否則不匹配,繼續比較hash(x)和hash(y[i+1,i+m]),直到匹配或比較結束為止。

2 算法

下面給出用C語言函數描述的具體算法

3 結語

在預期情況下該算法的時間復雜度為O(n+m),在最壞情況下,該算法的時間復雜度為O(n*m)。盡管該算法在效率上不是最好,但算法簡單,易于理解,在對時間復雜度要求不是很苛刻的環境下,還是一個簡單高效的模式匹配算法。

[1]羅大光,郝玉潔,劉乃琦.一種非常快速的字符串匹配算法[J].電子科技大學學報,2005,34(06):802-805.

[2]嚴大治.字符串匹配算法比較與分析[J].計算機光盤軟件與應用,2013(02):138-140.

[3]嚴蔚敏,吳偉民.數據結構(C語言版)[M].北京:清華大學出版社,1996:79-80.

10.16640/j.cnki.37-1222/t.2015.21.196

主站蜘蛛池模板: 亚洲 欧美 日韩综合一区| 思思热精品在线8| 亚洲第一黄色网址| 再看日本中文字幕在线观看| 精品亚洲国产成人AV| 国产在线自乱拍播放| 秘书高跟黑色丝袜国产91在线| 久久精品国产999大香线焦| 国产欧美日韩综合在线第一| a级毛片一区二区免费视频| AV天堂资源福利在线观看| 亚洲国产成人综合精品2020 | 高清乱码精品福利在线视频| 40岁成熟女人牲交片免费| 91久久性奴调教国产免费| 亚洲欧洲自拍拍偷午夜色| 亚洲精品在线影院| 国产菊爆视频在线观看| 免费看a级毛片| 91成人在线免费观看| 综合久久久久久久综合网| 麻豆国产在线观看一区二区| 国产在线98福利播放视频免费| 亚洲欧美不卡中文字幕| 免费人成网站在线高清| 成人一区在线| 久久激情影院| 国产网友愉拍精品| 日韩少妇激情一区二区| 天堂成人在线| 天天激情综合| 呦视频在线一区二区三区| 亚洲日韩久久综合中文字幕| 国产精品久线在线观看| 欧美成人精品欧美一级乱黄| 欧美成人aⅴ| 欧美中文字幕第一页线路一| 91麻豆精品国产91久久久久| 666精品国产精品亚洲| 国产在线视频福利资源站| 福利姬国产精品一区在线| 国产成人无码播放| 久久综合色88| 亚洲黄网在线| 亚洲黄色视频在线观看一区| 在线免费观看AV| 九色视频线上播放| 高清欧美性猛交XXXX黑人猛交 | 91视频精品| 欧美激情视频二区| 中文字幕 91| 久久亚洲欧美综合| 色综合久久无码网| 国产91色| 欧美日韩一区二区三区四区在线观看 | 国产成人无码AV在线播放动漫| 无码国产偷倩在线播放老年人| 国产香蕉国产精品偷在线观看| 亚洲va视频| 亚洲高清日韩heyzo| 丁香婷婷综合激情| 日韩午夜伦| 四虎国产成人免费观看| 日韩亚洲高清一区二区| 影音先锋丝袜制服| 日韩人妻无码制服丝袜视频| 天堂亚洲网| 91久久国产综合精品女同我| 夜夜操狠狠操| 激情无码字幕综合| yy6080理论大片一级久久| 欧美在线观看不卡| 日韩性网站| 91美女在线| 99精品一区二区免费视频| 一级毛片网| 亚洲性日韩精品一区二区| 国产日韩丝袜一二三区| 国产一在线| 麻豆精品久久久久久久99蜜桃| 92午夜福利影院一区二区三区| 国产午夜精品一区二区三区软件|