数据结构求子串、非空子串、真子串、非空真子串数

子串、非空子串、真子串、非空真子串,求数公式及例子

子串非空子串真子串非空真子串
( 1 + n ) ∗ n 2 + 1 \frac {(1+n)*n}{2}+1 2(1+n)n+1 ( 1 + n ) ∗ n 2 \frac {(1+n)*n}{2} 2(1+n)n ( 1 + n ) ∗ n 2 \frac {(1+n)*n}{2} 2(1+n)n ( 1 + n ) ∗ n 2 − 1 \frac {(1+n)*n}{2}-1 2(1+n)n1

举个栗子:
串 S = “database” 的非空子串数目为:( )
A、37
B、36
C、35
D、34

S=“database”,n=8,求非空子串,带入公式, ( 1 + 8 ) ∗ 8 2 \frac {(1+8)*8}{2} 2(1+8)8 9 ∗ 8 2 = 36 \frac {9*8}{2}=36 298=36
是不是就想选 B 了,如果串中没有重复的,就是 36;
有重复的,减去重复项:对于第一个a来说,第二个、第三个a是重复的,也就是有两个重复项;
所以结果是 D, 36 - 2 = 34;

串 S = "www.88.com"的非空子串数目为:____。

数一数就知道 n 是多少了,n = 10,带入公式得 ( 1 + 10 ) ∗ 10 2 = 55 \frac {(1+10)*10}{2}=55 2(1+10)10=55
重复项:

对于第一个 w 来说,第二个、第三个 w 是重复的
对于第一个 . 来说, 第二个 . 是重复的
对于第一个 8 来说,第二个 8 是重复的

对于第一个 ww 来说,第二个 ww 是重复的

所以结果是 55 - 5 = 50;

  • 17
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值