開發工具與關鍵技術:vs 與 資料結構
資料結構和演算法的知識點有很多,首先我們來了解一下字串,字串已經應用到了很多程式語言當中,應用相當廣泛。
串是字串的簡稱。在資料結構中,串是一種在資料元素的組成上具有一定約束條件的線性表,即要求組成線性表的所有資料元素都是字元,所以說串是乙個有窮的字串行。
串是由零個或多個字元組成的有限序列,記作s=」s0s1…sn-1」(n≥0),其中s是串名,字元個數n稱作串的長度,雙撇號括起來的字串行」s0s1…sn-1」是串的值。每個字元可以是字母、數字或任何其它的符號。零個字元的串(即:」」)稱為空串,空串不包含任何字元。值得注意的是:
(1)長度為1的空格串" 「不等同於空串」";
(2)值為單個字元的字串不等同於單個字元,如"a"與′a′;
(3)串值不包含雙撇號,雙撇號是串的定界符。
串中任意個連續的字元組成的子串行稱為該串的子串。包含子串的串則稱為主串。通常將字元在串中的序號稱為該字元在串中的位置。子串在主串鐘的位置則以該子串在主串中的第乙個字元位置來表示。為了讓大家更好的理解子串,舉個簡單的例子說明。如:
s=「i am from canada.」;
s1=「am.」;
s2=「am」;
s3=「i am」;
s4="i am ";
s5=「i am」;
s2、s3、s4、s5都是s的子串,或者說s是s2、s3、s4、s5的主串,而s1不是s的子串。s3等於s5,s2不等於s4。s的長度是17,s3的長度是4,s4的長度是5。
串的操作集合:
(1) 初始化串
(2) 賦值
(3) 求串長度
(4) 有相等和不相等兩種比較結果,還有大於,等於和小於三種比較結果
(5) 插入
(6) 刪除
(7) 取子串
(8) 查詢子串
(9) 替換子串
串和線性表的相同之處就是都是線性結構。
不同之處:
(1) 線性表的資料元素型別為任意類型別,而串的資料元素型別為字元型別
(2) 線性表的插入和刪除操作都是只對乙個資料元素,而串的插入和刪除操作都是對乙個子串進行的
(3) 串還有一些不同於線性表的其它操作
這些就是串的一些基本操作。
字串基本操作
include unsigned int strlenth char s 獲取字串長度 return lenth void strcopy char target,char source 字串拷貝 int strcompare char s,char t 字串比較,s t,則返回1 s t,則返回0...
字串基本操作
遞迴求字串長度 int recurlength char str 字串中最後乙個引數的長度 int lastwordlen char str,int len int lastwordlen char str return lastlen 字串記憶體的拷貝 實現memmove函式 char my me...
字串基本操作
判斷字串開頭結尾字元 string.startswith l 判斷字串是否以l開頭 string.endswith n 判斷字串是否以n結尾 返回字串中字元的位置 string.find x 找到這個字元返回下標,多個時返回第乙個 不存在的字元返回 1 string.index x 找到這個字元返回...