資源描述:
《數據結構串與模式匹配.doc》由會員上傳分享,免費在線閱讀,更多相關內容在應用文檔-天天文庫。
1、《數據結構與算法》實驗指導V2017常熟理工學院《數據結構與算法》實驗指導與報告書_2017-2018_____學年第__1__學期專業(yè):物聯網工程實驗名稱:串與模式匹配實驗地點:N6-210指導教師:聶盼紅計算機科學與工程學院2017常熟理工學院計算機科學與工程學院11《數據結構與算法》實驗指導V2017實驗四串與模式匹配【實驗目的】1、掌握串的存儲表示及基本操作;2、掌握串的兩種模式匹配算法:BF和KMP。3、了解串的應用。【實驗學時】2學時【實驗預習】回答以下問題:1、串和子串的定義串:串
2、是由零個或多個任意字符組成的有限序列。子串:串中任意連續(xù)字符組成的子序稱為該串的字串。2、串的模式匹配串的模式匹配是數據結構中字符串的一種基本運算,給定一個子串,要求在某個字符串中找出與該子串相同的所有子串,這就是模式匹配。假設P是給定的子串,T是待查找的字符串,要求從T中找出與P相同的所有子串,這個問題成為模式匹配問題。P稱為模式,T稱為目標。如果T中存在一個或多個模式為P的子串,就給出該子串在T中的位置,稱為匹配成功;否則匹配失敗【實1驗內容和要求】/1、按照要求完成程序exp4_1.c,實
3、現串的相關操作。調試并運行如下測試數據給出運行結果:求“Thisisaboy”的串長;比較”abc3”和“abcde“;表示空格常熟理工學院計算機科學與工程學院11《數據結構與算法》實驗指導V2017比較”english”和“student“;比較”abc”和“abc“;截取串”white”,起始2,長度2;截取串”white”,起始1,長度7;截取串”white”,起始6,長度2;連接串”asddffgh”和”12344”;常熟理工學院計算機科學與工程學院11《數據結構與算法》實驗指導V201
4、7實驗代碼:#include#include#defineMAXSIZE100#defineERROR0#defineOK1/*串的定長順序存儲表示*/typedefstruct{chardata[MAXSIZE];intlength;}SqString;intstrInit(SqString*s);/*初始化串*/intstrCreate(SqString*s);/*生成一個串*/intstrLength(SqString*s);/*求串的長度*/ints
5、trCompare(SqString*s1,SqString*s2);/*兩個串的比較*/intsubString(SqString*sub,SqString*s,intpos,intlen);/*求子串*/intstrConcat(SqString*t,SqString*s1,SqString*s2);/*兩個串的連接*//*初始化串*/intstrInit(SqString*s){s->length=0;s->data[0]='