包含给定三元字符串的一个或两个字符的连续子字符串

标签 c string ternary

面试的一个问题是:给定一个三元字符串,找到仅包含给定三元字符串的一个或两个字符的连续子字符串的数量。三元字符串是最多由 3 个字符组成的字符串。例如:bcabb 是集合 {a,b,c} 上的三元字符串。 上面例子的答案是:b,c,a,b,b,bc,ca,ab,bb 即.,9。

注意:子字符串由开始和结束索引决定,而不是唯一性。

谁能告诉我这个问题应该遵循什么算法。

最佳答案

我无法完全理解你在说什么,但从示例和描述中我认为答案将是 2 * strlen (string) - 1 。这是因为您有给定字符串中的 strlen (string) 个单长度字符串和 strlen (string) 个 2 长度子字符串。

关于包含给定三元字符串的一个或两个字符的连续子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12709833/

相关文章:

C 如何引用一个数组中的不同内存位置

c - 如何在 UNIX 中包含 C 可用的基本头文件?

java - 下面的方法调用语句在Java中是什么意思?

java - 文件读取期间无限循环且 String.split() 无法正常工作

javascript - 具有多个变量的三元运算符

python - 如何将缩放比例放在三元图中的刻度上而不是 x 和 y 轴上

c - FAT12/FAT16-什么决定扇区计数?

c - libpcap:带有 "own"缓冲区的 pcap_next_ex

c - 为什么字符串数组不区分数值而整数数组不显示字符?

java - 在java中,在lambda函数内部使用时,三元运算符是否被视为单行表达式?