2. 数据结构——串(python描述)

本文介绍了串(字符串)在数据结构中的基本概念,包括顺序存储、链式存储及其运算。详细讨论了串的长度、空串、空格串、字串、主串和真子串的概念,并给出了串相等的定义。还提到了串的初始化、子串获取、串连接等操作,以及链式存储结构的特点。并以串的反转为例进行了说明。
摘要由CSDN通过智能技术生成

参考文献:
[1]张光河.数据结构——python语言描述[M]. 北京:人民邮电出版社,2018,161-185.
[2]

1. 串

字符串通常被称为串。

  • 顺序存储
  • 链式存储
  • 模式匹配

1.1 串的基本概念

  • 长度:字符个数
  • 空串:string="",长度为0
  • 空格串:stringBlank=" ",仅含一个空格,长度为1
  • 字串:串中任何连续字符组成
  • 主串:包含子串b的串,称为b的主串
  • 真子串:串的所有字串,除了自身以外
  • 字串的位置:子串中第一个字符的位置
  • 串相等:长度和位置相等

串的抽象数据类型

  • a=stringDest , b=stringSrc
操作 说明
InitString(string) 初始化串
StringAssign(stringDest,stringSrc) 将后一个的字符序列赋值给第一个
IsEmptyString(string) 若为空返回true,反之false
StringCopy(a,b) 由B复制得到a
StringCompare(a,b) 若a>b,返回1;等于,0;小于,-1
StringLength(string) 返回string长度
ClearString(string) 清空string,变为空串
StringConcat(a,b) 将b连接到a后面,新的a变为以前的a+b
IndexString(a,b,iPos) 若a,b存在相同的字串,则返回它在a中第iPos 个字符之后第一次出现的结果;否则iPos=-1,并返回-1.
StringDelete(string,iPos,length) 从string第ipos位置,删除指定的length长度的字串
StringInsert(a,ipos,b) 在a的第ipos位置后插入b
StringReplace(a,b,stringtemp) 串a中的b串被stringtemp代替

1.2 串的顺序存储及运算

初始化、是否为空、创建串、串连接、获取子串

## 初始化串
def __init__(self):
	self.MaxStringSize=256
	self.chars=""
	self.length=0

## 判断是否为空
def IsEmpty(self):
	if self.length == 0 :
		IsEmpty=True
	else:
		IsEmpty=False
	return IsEmpty

## 创建串
def CreateString(self):
	stringSH=
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值