题解 | #特工的密码#
特工的密码
https://www.nowcoder.com/practice/bcdfed09de534aea92b24c73699dba5c
知识点
字符串,双指针,模拟
思路
设s为较长的字符串,t为较短的字符串。对于s用i作为指针,对于t用j作为指针。
从第0位开始比较,若s[i]==t[j],则i++,j++,指针同时向前移动;否则仅i++,试图找到下一位与t[j]匹配的字符。i<s.size()。
代码c++
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @param t string字符串
* @return bool布尔型
*/
bool isSubsequence(string s, string t) {
int j=0;
if(s.size()<t.size())
{
string temp=s;
s=t;
t=temp;
}
// cout<<s<<endl<<t<<endl;
for(int i=0;i<s.size();)
{ // cout<<s[i]<<" "<<t[j]<<endl;
if(s[i]==t[j])
{
i++;
j++;
}
else {
i++;
}
}
if(j==t.size())return true;
else return false;
// write code here
}
};