字符串的认识

(作者:饶家俊)

现在我给大家简单介绍一下字符串,字符串简称为串,在数据结构里面,串是数据元素组成有一定的约束条件,必须所有组成线性表的所有数据元素都是字符,串是一个有穷的字符序列。

接下来就是字符串的定义,字符串是由零或者多个字符组成的有限序列,记作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。

字符串是基本算法是在字符串的应用广泛使用,加深理解和简化了日后对字符串的应用,接下来就是介绍字符串的基本算法。

Android 字符串不管多长都是4个字节吗 字符串应该视为长度为1_子串

在下面就是字符串的抽象数据类型,数据集合:串的数据集合可以表示为字符串序列s0s1…sn-1,每个数据元素的数据类型为字符串类型。

串的操作分别为:1.初始化串 2.赋值 3.求串长度4.比较:有相等和不相等两种比较结果,还要大于,等于和小于比较结果 5.插入 6.删除 7.取子串8.查找子串9.替换子串

串和线性表相互比较。

相同之处:都是线性结构

不同之处:

(1)
线性表的数据元素类型为任意类类;而串的数据元素类型为字符类型

(2)线性表的插入和删除操作都是只对一个数据元素;而串的插入和删除操作都是对一个子串进行的

(3)串还有一些不同于线性表的其他操作

现有的所以高级程序设计语言,如Java,C++等,都提供了专门的串操作函数或者串类。