数据结构1800题-错题集-第四章

数据结构1800刷题😁错题集

序号标题为解答,引用为题目和答案

  1. 子串很多个,不是首次出现才是子串,首次出现的叫模式匹配

设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为( C )
A.求子串
B.联接
C.匹配
D.求串长

  1. 第一步求每一位的最大公共串长度
    a a a b
    0 1 2 0
    第二步右移一位
    a a a b
    0 1 2 3
    第三步去掉最后边超出来的一位,第一位补上-1
    a a a b
    -1 0 1 2
    第四步看情况要不要给每一位都加上1
    a a a b
    0 1 2 3

已知串S=′aaab′,其Next数组值为(A)
A 0123
B 1123
C 1231
D 1211

  1. 解题思路同上
    在这里插入图片描述

串’ababaaababaa’的next数组为 C
A 012345678999
B 012121111212
C 011234223456
D 012301232234

  1. 牛客网解析

字符串‘ ababaabab’ 的 nextval 为( A )
A.(0,1,0,1,04,1,0,1) B.(0,1,0,1,0,2,1,0,1)
C.(0,1,0,1,0,0,0,1,1) D.(0,1,0,1,0,1,0,1,1 )

  1. 子串: n(n+1)/2 + 1
    非空子串:n(n+1)/2
    非空真子串:n(n+1)/2 - 1

若串 S=’software’,其子串的数目是( B )。
A.8 B.37 C.36 D.9

  1. .KMP 算法的特点是在模式匹配时指示主串的指针不会变小
  2. 串是一种数据对象和操作都特殊的线性表
  3. 设正文串长度为 n,模式串长度为 m,则串匹配的 KMP 算法的时间复杂度为 O(m + n)
  4. 设T和P是两个给定的串,在T中寻找等于P的子串的过程称为模式匹配,又称P为模式串
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值