数据结构——串、KMP算法、数组和广义表习题整理

1.空串与空格串是相同的(F)

解析:串是由零个或多个字符组成的有限序列,空串即为含零个字符的串,而空格串为串中的字符都为空格,二者为不同概念

2.如果一个串中的所有字符均在另一串中出现,则说前者是后者的子串(F)

解析:子串是指一个串中任意个连续字符组成的序列,即子串不仅要字符与原串相同,而且要按照原串字符的排列顺序,即如果一个串中的所有字符均在另一个串出现,但顺序排列与原串不同,也非其的子串

3.子串VS子序列

子串必须为连续的字符,而子序列为取串中的多个字符,按顺序排列,但字符可以是不相邻字符,如串"sdtfb",子串可以为“sdt”,而子序列可以为“sdf”

4.真子串:即不包括自身的所有子串

5.KMP算法的特点是在模式匹配时指示主串的指针不会变小回溯,而是模式串的指针在不断的回溯,主串的指针只能向前

6.对称矩阵中的元素是按主对角线对称的,即上三角部分和下三角部分中的对应元素相等,所以在存储时只存储主对角线和下三角部分或主对角线和上三角部分的元素,让对称的两个元素共享一个存储空间

7.设有两个串p和q,求q在p中首次出现的位置的运算称为​模式匹配

8.串的长度是指串中所含字符的个数,这个定义包括了串中的所有字符,无论它们是否相同或是否包含空格

9.数组的性质

  • 数组中数据元素的数目固定,一旦定义了一个数组,其数据元素数目不再有增减的变化
  • 数组中的数据元素具有相同的数据类型
  • 数组中的每个数据元素都和一组唯一的下标对应
  • 数组具有随机存储特性,可随机存取数组中的任意数据元素

10.广义表是一种多层次的数据结构,是线性表的推广,是有限个元素的序列,其元素可以是单原子也可以是子表,即若ai也为广义表,则称其为广义表的子表

11.广义表中的原子或子表类型可以不同

12.广义表的特性

  • 广义表的数据元素是有相对次序的
  • 广义表的长度定义为最外层包含的元素的个数,若ai为广义表,长度仍为1,例如( a, (b, c), d, (), ((f, g), h) )长度为5
  • 广义表的深度定义为所含括弧的重数,例如( a, (b, c), d, (), ((f, g), h) )的深度为3
  • 广义表可为递归的表,也可为自己的子表,这种广义表称为递归表
  • 广义表用大写字母,原子用小写字母
  • 广义表的表尾始终为一个广义表,空表无表头表尾,例如A=(a,(b,c)),表头为a,表尾为((b,c)),广义表的表尾自带一个括弧

12.对特殊矩阵采用压缩存储的主要目的是减少不必要的存储空间

13.对称矩阵10*10,采用压缩存储需要的空间是55

解析:对称矩阵以主对角线为对称轴,上三角和下三角的元素一一对应,存储时只需存储一个三角部分,主对角线的元数个数为10个,上三角和下三角的元素分别为45个,所以总需的压缩存储空间为55

14.稀疏矩阵:当一个阶数较大的矩阵中的非零元数个数s相对于矩阵元素的总个数t非常小时,即s<<t时,称这个矩阵为稀疏矩阵

15.稀疏矩阵的压缩存储方法威威只存储非零元素,存储时必须同时存储非零元素对应的行下标、列下标和元素值,有一个三元组(i,j,ai,j)确定,最终将所有的非零元素构成三元组线性表

  • 12
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值