程序描繪人生
知識改變命運,學習成就未來。
C++博客
新隨筆
聯系
聚合
管理
隨筆 - 89 文章 - 118 trackbacks - 0
<
2012年12月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
留言簿
(16)
給我留言
查看公開留言
查看私人留言
隨筆分類
(56)
C++(3)
hadoop(1)
NodeJS(1)
NSIS安裝包(1)
Windows開發(2)
電子支付
高性能服務器(1)
架構設計(5)
搜索引擎(8)
算法(12)
研發管理(15)
轉載(7)
隨筆檔案
(89)
2018年6月 (1)
2018年2月 (1)
2017年5月 (1)
2017年1月 (1)
2016年7月 (1)
2016年5月 (1)
2016年1月 (1)
2015年12月 (1)
2015年2月 (1)
2014年8月 (1)
2014年5月 (4)
2014年2月 (1)
2013年11月 (3)
2013年9月 (3)
2013年8月 (4)
2013年6月 (1)
2013年5月 (1)
2013年4月 (1)
2013年2月 (1)
2012年12月 (15)
2012年11月 (6)
2012年10月 (1)
2012年9月 (2)
2012年8月 (1)
2012年3月 (2)
2011年12月 (1)
2011年11月 (1)
2011年9月 (1)
2011年8月 (1)
2011年7月 (1)
2011年5月 (1)
2010年12月 (1)
2010年9月 (1)
2010年8月 (2)
2010年7月 (1)
2010年3月 (1)
2009年12月 (2)
2009年11月 (2)
2008年9月 (1)
2008年8月 (4)
2008年7月 (3)
2008年5月 (1)
2008年4月 (1)
2008年3月 (2)
2008年2月 (2)
2007年12月 (2)
2007年9月 (1)
文章分類
C++
技術隨筆
推薦博客
在你身邊
胡滿超的非技術博客
搜索
最新隨筆
1.?LeetCode – Median of Two Sorted Arrays - findMedianSortedArrays
2.?深入淺出LSH
3.?LSH Locality-Sensitive Hashing 局部敏感哈希算法總結
4.?R語言預測實戰源代碼 Predictive Practice With R source code
5.?程序員如何轉型做大數據
6.?實戰java高并發程序設計 源代碼 source code
7.?spark機器學習 源代碼 Machine Learning With Spark source code
8.?機器學習算法原理與編程實踐 代碼下載地址
9.?轉: 國標一級和國標二級漢字
10.?軟件架構設計要點
11.?Exception in thread "main" java.lang.ClassNotFoundException: WordCount
12.?轉:高性能服務端編程知識點梳理圖解
13.?nodejs socket is connect
14.?轉:CTime與CString相互轉化
15.?轉:一個故事告訴你比特幣的原理及運作機制
16.?這就是搜索引擎-筆試6-鏈接分析
17.?這就是搜索引擎-筆試5-檢索模型與搜索排序
18.?這就是搜索引擎-筆試4-索引壓縮
19.?這就是搜索引擎-筆試3-搜索引擎索引
20.?這就是搜索引擎-筆試2
最新評論
1.?re: 迷宮最短路徑問題解析
@rover
這個是C++模板
--胡滿超
2.?re: 迷宮最短路徑問題解析
stack<Postion> path__;
這個里面 ”<> “符號是什么意思?我在C++語言里面沒見過呢? 初學者,大神勿噴。
--rover
3.?re: 機器學習算法原理與編程實踐 代碼下載地址
跪謝大神了,幫了我很多
--naomi
4.?re: 如何在NSIS中執行BAT文件
@humanchao
我想試試軟件
--舒
5.?re: 判斷單鏈表是否存在環,判斷兩個鏈表是否相交問題詳解
n只可能是1
--lookdown
6.?re: 判斷單鏈表是否存在環,判斷兩個鏈表是否相交問題詳解
當fast若與slow相遇時,slow肯定沒有走遍歷完鏈表@科匠
那有沒有可能slow已經走了多于一圈了呢?
--gqqnbig
7.?re: 迷宮最短路徑問題解析
。。。。。。。。
--11
8.?re: 轉:CTime與CString相互轉化
看起來很簡練啊 @楊粼波
--胡滿超
9.?re: 轉:CTime與CString相互轉化
評論內容較長,點擊標題查看
--楊粼波
10.?re: VC取得目錄大小[未登錄]
GetDiskFreeSpaceEx獲得的是驅動器實際占用的空間,而下面代碼獲得的是目錄大小,請問如何獲得目錄實際占用的空間? sinee3000@sina.com
--xy
閱讀排行榜
1.?判斷單鏈表是否存在環,判斷兩個鏈表是否相交問題詳解(34844)
2.?機器學習算法原理與編程實踐 代碼下載地址(25896)
3.?spark機器學習 源代碼 Machine Learning With Spark source code(23663)
4.?實戰java高并發程序設計 源代碼 source code(21842)
5.?轉:幾種MFC對話框的隱藏方法(10836)
6.?單鏈表逆序輸出(10388)
7.?VC中取得毫秒級的時間(9851)
8.?迷宮最短路徑問題解析(8918)
9.?深入淺出LSH(8910)
10.?Exception in thread "main" java.lang.ClassNotFoundException: WordCount(7547)
字符串常見算法之一:查找一個短串在一個長串中位置
介紹的一些字符串處理的問題在日常編程中比較常見,但是在大學讀書的時候幾乎一個都沒有涉及,最近學習了一下在這里介紹給大家,僅供參考。
這些算法與內容包括:
1、 查找一個短串在一個長串中位置;
2、 查找一個字符串中最長的重復子串;
3、 查找一個字符串中重復最多的子串;
4、 兩個字符串最長的公共子串(連續);
5、 兩個字符串最長的公共子序列(不連續);
6、 介紹一種強大的數據結構,Suffix tree.
這里有一個PPT:
http://www.shnenglu.com/Files/humanchao/StringAlg.zip
-------------------------------------------------
查找一個短串在一個長串中位置
這個問題傳統的解法時間復雜度為O(m*n),m、n為兩個串的長度。有一個Sunday算法,可以最大限度的優化這個比較過程,原理如下:
1、建立一個hash table,依次把search各個字符值作為table索引,為table相應的位置一個值(表示字符存在),如果出現重復,后面的位置會覆蓋前面的位置。
例:我們要在"WHICH-FINALLY-HALTS.—AT-THAT-POINT"(簡稱string)查找" AT-THAT "(簡稱pat),剛開始時,把pat與string對齊,查看串string中與串pat 相對應的字符(F),在pat的位置,這個查找的過程時間復雜度通過hash table的下標索引為 O(1):
2、如果發現沒有,說明字符F之前已經無法與pat匹配,直接跳到position(F)+stringlength(pat)
3、發現”-”在pat位置3,于是重新定位對齊兩串為:
4、倒序(從最后一個向前)比較兩串,發現無法匹配,繼續跳轉->查找->定位
因為上面已經有一個T匹配成功,這次要從HALTS的S來查找,于是定位為:
5、上圖無法匹配,從”--AT-“中A后的”-”繼續查找,重復上過程,最終匹配如圖:
這個算法關鍵點:
1、建立為pat建立hash表,以提高查找字符的速度;
2、對齊跳轉,快速的后移比較,使比較次數減少。
具體的代碼實現可以參考鏈接:
http://blog.csdn.net/unicode1985/archive/2007/05/30/1631038.aspx
posted on 2009-11-25 17:20
胡滿超
閱讀(3141)
評論(0)
編輯
收藏
引用
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 胡滿超 Powered by:
博客園
模板提供:
滬江博客
日韩欧美亚洲综合久久
|
国产精品久久久久无码av
|
精品视频久久久久
|
久久久国产视频
|
久久精品国产亚洲77777
|
久久久久人妻精品一区三寸蜜桃
|
久久久久亚洲精品日久生情
|
久久国产精品波多野结衣AV
|
热99RE久久精品这里都是精品免费
|
久久精品国产亚洲77777
|
久久99热这里只频精品6
|
国产精品久久精品
|
性做久久久久久久
|
偷偷做久久久久网站
|
久久人妻少妇嫩草AV无码蜜桃
|
久久婷婷成人综合色综合
|
区久久AAA片69亚洲
|
色偷偷88欧美精品久久久
|
91精品免费久久久久久久久
|
人妻无码久久一区二区三区免费
|
伊人久久成人成综合网222
|
国产高清美女一级a毛片久久w
|
.精品久久久麻豆国产精品
|
久久久久亚洲AV成人网人人网站
|
亚洲人AV永久一区二区三区久久
|
99麻豆久久久国产精品免费
|
久久久无码一区二区三区
|
亚洲伊人久久精品影院
|
2021最新久久久视精品爱
|
久久99这里只有精品国产
|
免费无码国产欧美久久18
|
欧美大战日韩91综合一区婷婷久久青草
|
久久青草国产手机看片福利盒子
|
国内精品久久久久伊人av
|
久久久久99精品成人片直播
|
新狼窝色AV性久久久久久
|
久久精品a亚洲国产v高清不卡
|
久久精品中文騷妇女内射
|
久久人人爽人人爽人人av东京热
|
色综合久久中文字幕无码
|
久久w5ww成w人免费
|