数据结构与算法基础(四)串、数组 和广义表

数据结构与算法基础(四)串、数组 和广义表


在这里插入图片描述

一、串(String)

1. 串的定义

零个或多个 任意字符组成的有限序列

在这里插入图片描述

几个术语
子串 主串 字符位置 子串位置 空格串
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2. 案例引入

2.1 病毒检测

在这里插入图片描述
在这里插入图片描述
字符串的匹配

3. 串的类型定义

数据对象:元素只能是字符串
数据关系:前趋和后继的关系

在这里插入图片描述
在这里插入图片描述

4.串的存储结构

在这里插入图片描述

4.1 串的顺序存储结构

  • 用物理位置表示逻辑位置
  • 数组
  • 0号元素一般闲置,通常从1号位置开始存储

在这里插入图片描述

4.2 串的链式存储结构

next域指向直接后继
在这里插入图片描述
在这里插入图片描述
不插入不删除,用顺序串更加方便

5. 串的操作

5.1 串的模式匹配算法

在这里插入图片描述

5.1.1 BF算法 简单匹配算法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

int Index_BF(SString S,SString T){
   //S主串 T字串,返回的是主串中的位置,所以int
 int i=1,j=1;// i主串 j字串
 while(i<=S.length && j
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值