我需要实现 lastSeq
函数,它作为参数 string str
和 char chr
并返回重复 chr
的最后一个序列的长度(该序列可以是任意长度)
例如:
lastSeq("abbaabbbbacd",'a')
应该返回 1
lastSeq("abbaabbbbacd",'b')
应该返回 4
lastSeq("abbaabbbbacd",'')
应该返回 0
有没有C++函数可以解决?
最佳答案
这似乎是作业,所以我只是给你一个方向,让你自己找到答案。
首先,如果没有计算机为您的 sample 提供正确的结果,您将如何自己做。从这些手动运行中,您将如何通过简单的步骤进行概括,以便您可以解决所有不同输入的问题。
此时你应该有一个粗略的算法来解决这个问题。您对 C++ 中的字符串存储以及该类可用的方法了解多少?其中一些可以用来解决您算法的某些步骤吗?
尝试使用这些函数编写一个程序,编译并运行它。你得到预期的结果了吗?如果没有,您可以尝试打印中间状态(使用 std::cout << "Some value: " << variable << "\n";
)来尝试调试它。
完成所有这些后,如果您仍然遇到问题,请使用您的代码更新您的问题,我们将能够为您提供更直接的帮助。
关于c++ - 字符串中子序列的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7964851/