数据结构——字符串与数组知识点总结

字符串理论

  1. 字符串是数据元素为单个字符的线性表,一般采用顺序存储。
  2. 在主串S中寻找字串T的过程称为模式匹配,T称为模式
  3. 主要的算法有BF算法,KMP算法

BF算法

数组理论

  1. 数组是由类型相同的数据元素构成的有序集合。
  2. 一维数组可以看作一个线性表,二维数组可以看作线性表的线性表,所以,数组是线性表的推广。
  3. 数组是一个具有固定格式和数量的数据集合,在数组是上一般不能执行插入删除操作,因此,数组中只能读取相应的元素和存储或修改相应的数据元素
  4. 二维数组存储常用的方法是按行优先和按列优先存储,按行优先是先存储行号较小的元素,行号相同的按照列号小的优先存储。按列优先是先存储列号较小的元素,列号相同的元素按照行号较小的优先存储。

特殊矩阵的压缩存储理论

  1. 在矩阵中有很多相同的元素并且他们的分布存在一定的规律——称为特殊矩阵
  2. 矩阵中有很多0元素——称为稀疏矩阵
  3. 矩阵压缩存储的基本思想是:多个值相同的元素只分配一个存储空间,对0元素不分配存储空间。
  4. 对称矩阵 只存储n(n+1)/2个元素,下三角元素寻址的计算方法为i(i-1)/2+j-1
  5. 三角矩阵只存储n(n+1)/2+1个元素,上三角矩阵寻址的计算方法为(i-1)*(2n-i+2)/2+j-i
  6. 对角矩阵寻址的计算方法为2i+j-3

稀疏矩阵的压缩存储理论

  1. 稀疏矩阵是0元素居多的矩阵,存储元素不仅需要元素值,还需要行号,列号,因此采用三元组的方式存储。
  2. 存储方式分为三元组顺序表,十字链表

广义表

  1. 广义表是n个数据元素的有限序列,每个元素可以是单个的数据元素也可以是一个广义表,分别称为广义表的单元素和子表。通常用大写字母表示广义表,小写字母表示单元素。
  2. 当广义表非空时,称第一个元素为广义表的表头,除去表头后其余的元素组成的广义表称为广义表的表尾。
  3. 广义表中数据元素的个数称为广义表的长度,广义表中括号的最大嵌套层数称为广义表的深度。
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值