安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第4章 串

第四章串 学习要点 掌握串的基本操作以及串操 作在存储结构下的实现。 理解串的模式匹配算法
第四章 串 学习要点 ▪掌握串的基本操作以及串操 作在存储结构下的实现。 ▪理解串的模式匹配算法

4. 1串类型的定义 4.2串的表示和实现 4.3串的模式匹配算法
4.1 串类型的定义 4.2 串的表示和实现 4.3 串的模式匹配算法

4.1串类型的定义 一、 串和基本概念 1.串的定义 串(string)是由零个或多个字符组成的有 限序列,一般记作S=‘a1a2a3.an’(n>=0) a(1≤i≤n)可以是字母、数字或其它字符。 串中字符的个数n称为串的长度。 2.空串 长度为零的串称为空串。由一个或多个 空格组成的串称为空白串
4.1 串类型的定义 一、串和基本概念 1.串的定义 串( string) 是由零个或多个字符组成的有 限序列,一般记作S=‘a1 a2 a3…an ’ (n>=0) 。 ai (1≤i≤n)可以是字母、数字或其它字符。 串中字符的个数n称为串的长度。 2.空串 长度为零的串称为空串。由一个或多个 空格组成的串称为空白串

3.子串、主串 串中任意连续字符组成的子序列称为 该串的子串。而包含子串的串相应地称 为主串。通常将子串的第一个字符在主 串的位置称为子串在主串中的位置。 如,串s1=“is”,s2=This is a string’ 则s1为s2的子串,s2相对于s1为主串 s1在s2中出现了两次,其中首次出现所对 应的主串位置是3。因此,称s1在s2中的 位置为3
3.子串、主串 串中任意连续字符组成的子序列称为 该串的子串。而包含子串的串相应地称 为主串。通常将子串的第一个字符在主 串的位置称为子串在主串中的位置。 如,串s1 =“is”,s2 =“This is a string”, 则s1为s2的子串, s2相对于s1为主串。 s1在s2中出现了两次,其中首次出现所对 应的主串位置是3。因此,称s1在s2中的 位置为3

串的抽象数据类型的定义: ADT String 数据对象: D={a aE CharacterSet, i=1,2,…,n, n≥0} 数据关系: Ri=ai-1,ai ED. i=2,…,n}
串的抽象数据类型的定义: ADT String { 数据对象: D={ ai |ai∈CharacterSet, i=1,2,...,n, n≥0 } 数据关系: R1={ | ai-1 , ai ∈D, i=2,...,n }

串的基本操作: 串赋值 串复制 串判空 串比较 求串长 串联接 求子串 串定位 串替换 串插入 串删除 串销毁
串赋值 串的基本操作: 串复制 串判空 串比较 求串长 串联接 求子串 串定位 串替换 串插入 串删除 串销毁

基本操作 StrAssign (&T,chars) 初始条件:chars是字符串常量。 操作结果:把chars赋为T的值。 例如:StrAssign(T,'datastru) 得T='datastru
StrAssign (&T, chars) 初始条件:chars 是字符串常量。 操作结果:把 chars 赋为 T 的值。 基本操作: 例如: StrAssign ( T, datastru) 得 T = datastru

StrCopy (&T,S) 初始条件:串S存在。 操作结果:由串S复制得串T。 例如:S='datastru',StrCopy(T,S) 得T='datastru
StrCopy (&T, S) 初始条件:串 S 存在。 操作结果:由串 S 复制得串 T。 例如:S= datastru , StrCopy ( T, S) 得 T = datastru

StrEmpty (S) 初始条件:串$存在。 操作结果:若S为空串,则返回TRUE 否则返回FALSE。 表示空串,空串的长度为零
StrEmpty (S) 初始条件:串S存在。 操作结果:若 S 为空串,则返回TRUE, 否则返回 FALSE。 表示空串,空串的长度为零

StrCompare (S,T) 初始条件:串S和T存在。 操作结果:若$>T,则返回值>0: 若$=T,则返回值=0, 若S0
StrCompare (S, T) 初始条件:串 S 和 T 存在。 操作结果:若S T,则返回值 0; 若S = T,则返回值 = 0; 若S T,则返回值 0。 例如:StrCompare(data , state) 0
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第3章 栈和队列.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第2章 线性表.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第1章 绪论(主讲:孙克雷).pptx
- 安徽理工大学:《数据结构》课程教学资源(2018计算机专业实习设计任务书).docx
- 安徽理工大学:《数据结构》课程教学资源(2016计算机网络课程设计任务书).doc
- Computational Intelligence(Concepts to Implementations)Part 1.pdf
- 信息安全专业教学资源(讲稿)Malware and Artificial Immune Systems.pdf
- 安徽理工大学:信息安全专业教学资源(讲稿)信息安全专业介绍 An Introduction to Specialty in Information.ppt
- 安徽理工大学:信息安全专业教学资源(讲稿)信息安全学科综述 An Overview of Information Security.ppt
- 信息安全专业教学资源(讲稿)An Introduction to Artificial Immune Systems(ES2001).ppt
- 安徽理工大学:信息安全专业教学资源(讲稿)Differential Privacy.pdf
- 信息安全专业教学资源(讲稿)Introduction to Artificial Immune Systems(AIS).ppt
- 信息安全专业教学资源(讲稿)Artificial Immune Systems——An Emerging Technology.ppt
- 安徽理工大学:信息安全专业教学资源(讲稿)Bot、Botnet及其检测技术.pdf
- 安徽理工大学:信息安全专业教学资源(讲稿)Advance in Intrusion Detection Techniques.ppt
- 信息安全专业参考书籍:《Mathematics for Computer Science》计算机科学数学(revised Monday 5th June, 2017,Eric Lehman、F Thomson Leighton、Albert R Meyer).pdf
- 安徽理工大学:信息安全专业教学资源(讲稿)学科前沿讲座之一.pptx
- 安徽理工大学:《Linux开发基础 Development Foundation on Linux OS》课程教学资源(PPT课件讲稿)Section 4 Perl编程(附Perl源代码).ppt
- 安徽理工大学:《Linux开发基础 Development Foundation on Linux OS》课程教学资源(PPT课件讲稿)Section 4 Perl programming.ppt
- 清华大学出版社:《GNU/Linux编程指南》参考书籍【美】K. Wall,M. Watson, M. Whitis(共39章).pdf
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第5章 数组和广义表.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第6章 树和二叉树.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第7章 图.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第9章 查找.pptx
- 安徽理工大学:《数据结构》课程教学资源(PPT课件讲稿,C语言版,2018)第10章 排序.pptx
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第1章 绪论(主讲:孙克雷).pdf
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第2章 线性表.pdf
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第3章 栈和队列.pdf
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第4章 串.pdf
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第5章 数组和广义表.pdf
- 安徽理工大学:《数据结构》课程教学资源(课件讲稿,C语言版)第6章 树和二叉树.pdf
- 烟台理工学院:《程序设计基础》课程教学资源(Python程序设计理论课教学大纲)Python Programming.docx
- 烟台理工学院:《程序设计基础》课程教学资源(Python课程设计教学大纲)Course Design of Python.doc
- 烟台理工学院:《程序设计基础》课程教学资源(程序设计基础课程设计教学大纲)Course Design of Programming Fundamentals.doc
- 烟台理工学院:《程序设计基础》课程教学资源(程序设计基础理论教学大纲)Programming Fundamentals.docx
- 烟台理工学院:《人工智能》课程教学资源(人工智能编程技术教学大纲)Course Design of artificial intelligence program technology.doc
- 烟台理工学院:《人工智能》课程教学资源(人工智能原理教学大纲)Principles of Artificial Intelligence.doc
- 烟台理工学院:《人工智能》课程教学资源(深度学习课程设计教学大纲)Design of Neural Network and Deep Learning.doc
- 烟台理工学院:《人工智能》课程教学资源(神经网络与深度学习教学大纲)Neural Network and Deep Learning.doc
- 烟台理工学院:《程序设计基础》课程教学资源(程序设计基础教学大纲)Programming Fundamentals.docx