首页 > 试题广场 >

若串str="xunlei",其子串的数目是()

[单选题]
若串str="xunlei",其子串的数目是()
  • 32
  • 31
  • 21
  • 22
字串: n(n+1)/2 + 1
非空子串:n(n+1)/2
非空真子串:n(n+1)/2 - 1
发表于 2015-11-25 14:44:56 回复(3)
来自malcolm:

子串数量的计算方法

编辑
ab的子串:a、b、ab和一个空子串共4个即(2+1+1)个,abc的子串:a、 b、 c、 ab、 bc 、abc和一个空子串 共(3+2+1+1)个,
所以若字符串的长度为n,则子串的个数就是[n+(n-1)+.......+1+1]个,"software"中非空子串的个数就是8+7+....+1=36个。
把这个理解了题目就好办
发表于 2016-03-21 11:39:15 回复(2)
噢,我把子串和子序列搞混了,子串是不能跳的
发表于 2017-09-17 11:12:27 回复(0)
一个字符串的非空子串的个数公式:(n2+n)/2,其中n为字符串的长度
    可以这样理解,将字串的每一个字符包括首尾的两端算上,插空,想象将两块木板***两个字符的间隙里去,木板之间的字符串就是可以看做字串,得到这个公式
发表于 2016-09-21 22:38:52 回复(0)
7个点   6*7/2=21   还有空串算一个
发表于 2015-11-26 11:12:02 回复(2)
长度为0的子串:1
长度为1的子串:6
长度为2的子串:5
长度为3的子串:4
长度为4的子串:3
长度为5的子串:2
长度为6的子串:1

总共1+2+3+4+5+6+1=22个
发表于 2019-04-11 09:37:20 回复(0)
子串
非空子串
非空真子串
发表于 2017-10-08 15:32:58 回复(0)
与数学中的子集是一个道理,要记住空集是任何非空集的子集
发表于 2017-09-19 15:28:05 回复(0)
还有一个空串,它是所有字符串的子串
发表于 2017-09-19 10:32:10 回复(0)
子串字符数为1的有6个,字符数为2的有5个,字符数为3的有4个...字符数为6的1个即6+5+4+3+2+1=21
加上空串共22个
发表于 2017-08-20 18:27:56 回复(3)
忘了空串。。
发表于 2016-09-01 19:17:01 回复(0)
xunlei 各以每个字母开头求子串,找规律。 x开头:x,xu,xun,xunl,xunle,xunlei(6个,即从x到字符串结尾的长度); 以u开头:同上理得5个子串; ……4; ……3; ……2; 以i开头:1个; 空串:1个(容易忽略)。 总子串=6+5+4+3+2+1+1=22
发表于 2016-09-01 16:13:02 回复(2)
注意加上空串
发表于 2016-06-23 21:42:26 回复(0)
若原 字符串为 xxx
分隔字符串即相当于在原串中插入两块木板分隔x|x|x
第一次插入时有n+1种放法,第二次插入时有n中插法,所有总插入数是n(n+1)
又因为俩个木板交换位置后还是同一个子串 所以数目为n(n+1)/2 
空串也是一个特殊的字符串 所以最后数目为 n(n+1)/2 +1
发表于 2016-03-20 15:35:30 回复(0)
忘记还有空串了
发表于 2016-02-29 16:44:34 回复(0)
#x#u#n#l#e#i# 
7*6/2 + 1 = 22
子串包括空串和自身。
发表于 2016-02-27 11:54:10 回复(0)
子串包含空串与其自身
发表于 2015-12-14 15:43:32 回复(0)
1+6+5+4+3+2+1=22
发表于 2015-12-09 01:40:59 回复(0)
n个元素,共有n+1个空。插入第一个空有n+1个选择,第二个有n个选择,所以共有n*(n+1),然后除去交换顺序的情况
共有n*(n+1)/2
发表于 2015-12-02 21:14:32 回复(0)