串 順序儲存結構

2021-08-02 16:44:56 字數 1810 閱讀 1689

該文章主要介紹串的順序儲存結構以及相關運算。

標頭檔案:sqstring.h

#ifndef sqstring_h_

#define sqstring_h_

#include const int maxsize = 100;

class sqstringclass //順序串類

;#endif

原始檔:sqstring.cpp

#include "sqstring.h"

using namespace std;

//********************=順序串的基本運算演算法***************====

sqstringclass::sqstringclass() //建構函式

sqstringclass::~sqstringclass() //析構函式

sqstringclass &sqstringclass::operator=(char *cstr) //過載賦值運算子

sqstringclass &sqstringclass::operator=(sqstringclass &t) //過載賦值運算子

if (len1 < len2)

return -1;

else if (len1 > len2)

return 1;

else

return 0;

}//*************************順序串的串匹配(bf)運算演算法********************==

int index(sqstringclass &s, sqstringclass &t)

else

}if (j >= t.strlength()) return i - t.strlength();

else

return -1;

}//*************************=順序串的串匹配(kmpf)運算演算法********************

void getnext(sqstringclass &t, int next)

else

}}int kmpindex(sqstringclass &s, sqstringclass &t)

else

}deletenext;

if (j >= len2)

return i - t.length;

else

return -1;

}

主函式:main.cpp

#include "sqstring.h"

using namespace std;

//***************====順序串的基本運算演算法********************=

void main1()

//-***************==順序串的其他運算演算法***************=

void main2()

//********************順序串的串匹配(bf)運算演算法**********===

void main3()

{ sqstringclass s1, s2;

s1 = "efabcd";

s2 = "cdh";

int index = index(s1, s2);

if (index!=-1)

cout << "s2從"<

4 2串的順序儲存結構

定長順序串是將串設計成一種靜態結構型別,串的儲存分配是在編譯時完成的。與前面所講的線性表的順序儲存結構類似,可用一組位址連續的儲存單元儲存串的字串行。定長順序串型別定義如下 define maxlen 40 typedef struct sstring 其中 maxlen 表示串的最大長度,ch 是...

4 1 串的順序儲存結構

header content type text html charset utf 8 class linear string 生成乙個值等於字串常量chars的串 public function strassign chars null this string substr this string...

順序儲存結構

順序儲存結構的插入與刪除 獲得元素操作 將線性表 l中的第 i個位置元素值返回,在陣列下標範圍內,就是把陣列第 i 1下標的值返回即可。define ok1 defineerror 0 definetrue 1 definefalse 0 typedefint status status 是函式的型...