一、串:非数值处理的对象基本上是字符串数据,

字符串作为常量,变量,基本操作。
信息检索系统,文字编辑程序,问答系统,自然语言翻译系统,音乐分析程序都是以字符串数据作为处理对象都。
串:字符串是由零个或多个字符组成都有限序列。字符可以是字母,数字或其他字符。
串中字符的个数n称作字符的长度.零个字符的串成为称为空串,长度为0.
子串:串中任意个连续的字符组成的子序列称为该串的子串。
两个串相等,当且仅当这两个串的值相等,长度相等并且对应位置的字符都相等。
空格串或这不可见字符串。
串的基本操作:查找,求子串,比较,串连接,求长度,插入,删除

二、串的表示和实现,3种表示方法

1. 定长顺序存储表示:串连接,求子串
2. 堆分配存储表示,动态分配:
3. 串的块链存储表示,采用链式存储,每块存储1-n个字符

三、串的模式匹配算法

1. 求子串位置的定位函数,两层循环法
2. 改进算法KMP算法,滑动窗口的方法,next(j) 计算过程

四、串操作的应用举例

1. 文本编辑:串的查找,插入,删除基本操作
2. 建立词索引表: 遍历,分词,索引表查找,索引表有序插入,链式存储