子串和子序列的区别


子串

串中任意个连续的字符组成的子序列称为该串的子串

对于一个字符串变量,例如"adereegfbw",它的子串就是像"ader"这样可以从中找到的连续的字符串。字符串"adereegfbw"本身也属于它本身最长的子串。

ab的子串:a、b、ab和一个空子串共4个即(2+1+1)个,abc的子串:a、 b、 c、 ab、 bc 、abc和一个空子串 共(3+2+1+1)个,
所以若字符串的长度为n,则子串的个数就是[n*(n+1)/2]+1个,"software"中非空子串的个数就是8+7+....+1=36个。

子序列

子数列,又称子序列,在数学中,某个序列的子序列是从最初序列通过

去除某些元素但不破坏余下元素的相对位置(在前或在后)而形成的新序列。

“AC”是“ABCDEFG”的子序列,而不是子串。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM