資料結構第八周專案2 順序串演算法

2021-08-10 16:37:39 字數 3000 閱讀 9484

/* 

*作    者:李哲

*版 本 號:v1.0

問題描述:採用順序儲存方式儲存串,實現下列演算法並測試:

(1)試編寫演算法實現將字串s中所有值為c1的字元換成值為c2的字元:

void trans(sqstring *&s, char c1, char c2);

(2)試編寫演算法,實現將已知字串所有字元倒過來重新排列。如abcdef改為fedcba。

void invert(sqstring &s)

(3)從串s中刪除其值等於c的所有字元。如從message中刪除』e』,得到的是mssag。

void dellchar(sqstring &s, char c)

(4)有兩個串s1和s2,設計乙個演算法求乙個這樣的串,該串中的字元是s1和s2中公共字元。

所謂公共子串,是由在s1中有,且在s2中也有的字元構成的字元。例s1為」message」,s2為」agent」,得到的公共子串是」eage」。

sqstring commchar(sqstring s1,sqstring s2);

*/

標頭檔案.h:

#ifndef sqstring_h_included

#define sqstring_h_included

#include #include "sqstring.h"

#define maxsize 100

typedef struct

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); //輸出串

void trans(sqstring *&s, char c1, char c2);

void invert(sqstring &s);

void dellchar(sqstring &s, char c) ;

sqstring commchar(sqstring s1,sqstring s2);

#endif // sqstring_h_included

原始檔.cpp:

#include #include #include "sqstring.h"

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

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

{ int i;

for (i=0;is.length || j<0 || i+j-1>s.length)

return str; //引數不正確時返回空串

for (k=i-1;ks1.length+1) //引數不正確時返回空串

return str;

for (j=0;js.length || i+j>s.length+1) //引數不正確時返回空串

return str;

for (k=0;ks.length || i+j-1>s.length) //引數不正確時返回空串

return str;

for (k=0;k0)

{ for (i=0;i

(1)#include #include "sqstring.h"

void trans(sqstring &s, char c1, char c2)

{ int i;

for (i=0; i運算結果:

for (i=0; i運算結果:

{ int k=0, i=0; //k記錄值等於c的字元個數

while(i運算結果:

for (i=0; i運算結果:

第八周專案2 順序串演算法

檔名稱 第八周專案2 順序串演算法 作 者 葛惠文 完成日期 2017年11月6日 版 本 號 v1.0 問題描述 採用順序儲存方式儲存串,實現下列演算法並測試 1 試編寫演算法實現將字串 s 中所有值為 c1 的字元換成值為 c2 的字元 void trans sqstring s,char c1...

第八周 專案2 順序串演算法

煙台大學計算機學院 完成日期 2017年12月7日 問題描述 採用順序儲存方式儲存串,採用順序儲存方式儲存串,實現下列演算法並測試 輸入描述 無 輸出描述 對串處理後的元素 1.試編寫演算法實現將字串s中所有值為c1的字元換成值為c2的字元 void trans sqstring s,char c1...

資料結構第八周專案三 順序串演算法

檔名稱 多檔案組織 作 者 張昕 完成日期 2017年10月23日 版 本 號 v1.0 採用順序儲存方式儲存串,實現下列演算法並測試 1 試編寫演算法實現將字串s中所有值為c1的字元換成值為c2的字元 void trans sqstring s,char c1,char c2 2 試編寫演算法,實...