子串——求出一个字符串的子串数目
子串
定义:串中任意个连续的字符组成的子序列称为该串的子串
求出“adereegfbw”子串的数目?
空串是所有串的字串,所以当字串长度为0时,字串为空串。
字串长度为0:
空串 (共1个)
字串长度为1:
a,d,e,r,e,e,g,f,b,w (共10个)
字串长度为2:
ad,de,er,re,ee,eg,gf,fb,bw (共9个)
字串长度为3:
ade,der,ere,ree,eeg,egf,gfb,fbw (共8个)
字串长度为4:
ader,dere,eree,reeg,eegf,egfb,gfbw (共7个)
字串长度为5:
adere,deree,ereeg,reegf,eegfb,egfbw (共6个)
字串长度为6:
aderee,dereeg,ereegf,reegfb,eegfbw (共5个)
字串长度为7:
adereeg,dereegf,ereegfb,reegfbw (共4个)
字串长度为8:
adereegf,dereegfb,ereegfbw (共3个)
字串长度为9:
adereegfb,dereegfbw (共2个)
字串长度为10:
adereegfbw (共1个)
因此
“adereegfbw”含有重复子串的子串数目为1+10+9+8+7+6+5+4+3+2+1=56
通过观察,可得
最小字串=空串
最大字串=其本身
如果一个字串的长度或字符个数为n,那么子串数目=n(n+1)/2+1 (最后1代表空串)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构