1、串的相关定义
- 串是有零个户多个字符组成的有限序列,比如字符串。
- 用 “ ” 或 ‘ ’ 来表示串。
- 两个串相等:当且仅当这两个串的长度相等并且各对应位置上的字符都相同。
- 子串:一个串中的任意个连续字符组成的序列称为该串的子串。
- 空串是任何串的子集。
2、串的基本运算
函数 | 函数作用 |
---|---|
StrAssign(&s,cstr) | 将字符串常量的cstr赋给串s,即生成其值等于cstr的串s |
DestroyStr(&s) | 销毁串s,释放为串s分配的内存空间 |
Strcopy(&s,t) | 串复制,将串t赋给串s |
StrEqual(s,t) | 判断串s与串t是否相等,相等则返回true,否则返回false |
StrLength(s) | 求串长,返回串s中字符的个数 |
Concat(s,t) | 串链接,返回由两个串s和t链接在一起的新串 |
SubStr(s,i,j) | 求子串,返回串s中从第i个字符开始的由连续j个字符组成的子串 |
InsStr(s1,i,s2) | 子串的插入,将串s2插入串s1的第i个位置,并返回产生的新串 |
DelStr(s,i,j) | 子串的删除,从串s中删去第i个自读开始的长度为j的子串,并返回新串 |
RepStr(s,i,j,t) | 子串的替换,在串s中将第i个字符开始的j个字符构成的子串用串t替换,并返回新串 |
DisStr(s,i,j) | 串的输出,输出串s的所有字符值 |
3、串的顺序存储结构
3.1 顺序串
采用顺序存储结构的串为顺序串
顺序串的基本运算算法设计与顺序表的类似,这里就不在展开了,具体的可以去看数据结构的概念大合集02(线性表)
4、串的链式存储结构
4.1 链串
采用链式存储结构的串称为链串
链串的组织形式与一般的单链表类似,主要区别在于链串中的一个结点可以存储多个字符
注:
本文将主要探讨串的概念,其中提及的各个函数操作将在后续的文章中详细展示,敬请读者期待。
上一篇文章
数据结构的概念大合集04(队列)
下一篇文章
数据结构的概念大合集06(树和二叉树)