第七周專案5 計數的模式匹配

2021-07-23 17:33:19 字數 1681 閱讀 6373

/*問題及** 

*all right reserved. 

*檔名稱:計數的模式匹配.cpp 

*完成日期;2023年10月15日 

*版本號;v1.0 

* *問題描述: 採用順序結構儲存串,編寫乙個演算法計算指定子串在乙個字串中出現的次數, 

如果該子串不出現則為0。 

*輸入描述:兩行字串 

*程式輸出:子字串在主字串內出現的次數 

1.main.cpp

#include "sqslist.h"

#include

int main()  

2.sqslist.cpp

#include"sqslist.h"

#include

#include

int str_count(sqstring s,sqstring t)  

}  return(count);  

}  void strassign(sqstring &s,char cstr) //s為引用型引數  

void strcopy(sqstring &s,sqstring t)    //s為引用型引數  

sqstring; //用於儲存字元對映表  

void strassign(sqstring &s,char cstr);    //字串常量cstr賦給串s  

void strcopy(sqstring &s,sqstring t);   //串t複製給串s  

bool strequal(sqstring s,sqstring t); //判串相等  

int strlength(sqstring s);  //求串長  

sqstring concat(sqstring s,sqstring t);  //串連線  

sqstring substr(sqstring s,int i,int j); //求子串  

sqstring insstr(sqstring s1,int i,sqstring s2); //串插入  

sqstring delstr(sqstring s,int i,int j) ;   //串刪去  

sqstring repstr(sqstring s,int i,int j,sqstring t);     //串替換  

void dispstr(sqstring s);   //輸出串  

sqstring encrypt(sqstring p);  

sqstring unencrypt(sqstring q);  

int str_count(sqstring s,sqstring t);  

#endif // sqstring_h_included  

執行結果:

知識點總結

此程式運用了bf的方式去解決問題,首先讓子字元與主字元進行第一次配對,當配對成功之後主字元從當前節點繼續後移,子字串從第乙個字元開始配對,如此迴圈直到主字串配對完成程式結束,同時也是用乙個變數記錄配對成功的次數。

學習心得

這個程式看起來不是太難,但是應用型很廣,對於生物dna或指紋配對技術是很有效的,我覺得如果真的用指紋或者dna的話兩者配對的資料肯定是很龐大,能熟知這個原理也是比較膩害的

第8周 專案5 計數的模式匹配

1.標頭檔案 sqstring.h,包含定義鏈隊資料結構的 巨集定義 要實現演算法的函式的宣告 define maxsize 100 最多的字元個數 typedef struct sqstring void strassign sqstring s,char cstr 字串常量cstr賦給串s vo...

第8周 專案5 計數的模式匹配

問題及 檔名稱 test.cpp 作 者 焦夢真 完成日期 2015年10月23日 版 本 號 v1.0 問題描述 採用順序結構儲存串,編寫乙個演算法計算指定子串在乙個字串中出現的次數,如果該子串不出現則為0。輸入描述 字串 子串。程式輸出 子串在乙個字串中出現的次數。include include...

第8周專案 5 計數的模式匹配

檔名稱 第8周專案5 計數的模式匹配.cpp 作 者 孫欽達 完成日期 2015年10月30日 版 本 號 v1.0 問題描述 採用順序結構儲存串,編寫乙個演算法計算指定子串在乙個字串中出現的次數,如果該子串不出現則為0。輸入描述 兩個字串。程式輸出 子串出現的次數。int str count sq...