專案2 建立鏈串的演算法庫

2021-07-05 23:45:07 字數 2565 閱讀 2800

問題及**:

/*2015,煙台大學計算機與控制學院

*完成日期:2023年10月19號

*問題描述: 定義鏈串的儲存結構,實現串的基本運算,並完成測試。

*/

(1)標頭檔案:

#ifndef listring_h_included

#define listring_h_included

typedef struct snode

listring;

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

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

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

int strlength(listring *s); //求串長

listring *concat(listring *s,listring *t); //串連線

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

listring *insstr(listring *s,int i,listring *t) ; //串插入

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

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

void dispstr(listring *s); //輸出串

#endif // listring_h_included

(2)源程式:

#include #include #include "listring.h"

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

r->next=null;

}void strcopy(listring *&s,listring *t) //串t複製給串s

r->next=null;

}bool strequal(listring *s,listring *t) //判串相等

if (p==null && q==null)

return true;

else

return false;

}int strlength(listring *s) //求串長

return i;

}listring *concat(listring *s,listring *t) //串連線

p=t->next;

while (p!=null) //將t的所有節點複製到str

r->next=null;

return str;

}listring *substr(listring *s,int i,int j) //求子串

r->next=null;

return str;

}listring *insstr(listring *s,int i,listring *t) //串插入

while (p1!=null) //將t的所有節點複製到str

while (p!=null) //將*p及其後的節點複製到str

r->next=null;

return str;

}listring *delstr(listring *s,int i,int j) //串刪去

for (k=0;knext;

while (p!=null) //將*p及其後的節點複製到str

r->next=null;

return str;

}listring *repstr(listring *s,int i,int j,listring *t) //串替換

for (k=0;knext;

while (p1!=null) //將t的所有節點複製到str

while (p!=null) //將*p及其後的節點複製到str

r->next=null;

return str;

}void dispstr(listring *s) //輸出串

printf("\n");

}

(3)除錯函式:

#include #include "listring.h"

int main()

執行結果:

知識點總結:

掌握串在鏈式儲存結構下的基本運算。

學習心得:

與順序串的基本運算有相同的地方。

專案2 建立鏈串演算法庫

標頭檔案 ifndef listring h included define listring h included typedef struct snode listring void strassign listring s,char cstr 字串常量cstr賦給串s void strcopy...

專案2 建立鏈棧演算法庫

問題及 1.標頭檔案 listack.h,包含定義鏈棧資料結構的 巨集定義 要實現演算法的函式的宣告 ifndef listack h included define listack h included typedef char elemtype typedef struct linknode l...

建立鏈串演算法庫

問題描述 定義鏈串的儲存結構,實現串的基本運算,並完成測試。輸入描述 各種串的輸入。程式輸出 各操作後的輸出。標頭檔案 typedef struct snode listring void strassign listring s,char cstr 字串常量cstr賦給串s void strcop...