如何推销企业建设网站,潍坊网站模板建站,百度上海推广优化公司,wordpress免费企业站主题判断子序列一个字符串是否是另一个字符串的子序列
解释#xff1a;字符串的一个子序列是原始字符串删除一些#xff08;也可以不删除#xff09;字符#xff0c;不改变剩余字符相对位置形成的新字符串。 如#xff0c;ace是abcde的一个子序…判断子序列一个字符串是否是另一个字符串的子序列
解释字符串的一个子序列是原始字符串删除一些也可以不删除字符不改变剩余字符相对位置形成的新字符串。 如ace是abcde的一个子序列。 aec不是abcde的子序列。 示例 1 输入s1 ac, s2 ahbgdc 输出true
示例 2 输入s ax, t acdgbgdc 输出false
解析 按照s2的字符串顺序去找如果s1是s2的子序列那么一定能找到对应的s1中的所有字符 如果遍历了s2而s1中还有剩余的长度没有找到那么说明s1不是s2的子序列。
示例源码
// Len_findChild.cpp : 此文件包含 main 函数。程序执行将在此处开始并结束。
//#include iostream
#include string
using namespace std;
bool JudgeChildStr(string s, string t)
{int count s.size() - 1;for (int i t.size() - 1; i 0 count 0; i--){if (t[i] s[count]){count--;}}if (count 0){return true;}return false;
}int main()
{string s1 ac;string s2 ahbgdc;bool bResult JudgeChildStr(s1, s2);printf(\n\ts1 %s \n\ts2 %s \n\tresult: %s\n, s1.c_str(), s2.c_str(), (bResult0)?(false):(true));s1 ax;s2 acdgbgdc;bResult JudgeChildStr(s1, s2);printf(\n\ts1 %s \n\ts2 %s \n\tresult: %s\n, s1.c_str(), s2.c_str(), (bResult 0) ? (false) : (true));}
执行结果