编写c++代码:给定字符串s和t,判断s是否为t的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。
时间: 2024-05-01 18:22:34 浏览: 162
字符串切割子字符串
以下是使用双指针法(双下标)的C++代码实现:
```cpp
#include <iostream>
using namespace std;
bool isSubsequence(string s, string t) {
int i = 0, j = 0;
while (i < s.size() && j < t.size()) {
if (s[i] == t[j]) {
i++;
}
j++;
}
return i == s.size();
}
int main() {
string s = "ace";
string t = "abcde";
if (isSubsequence(s, t)) {
cout << s << " is a subsequence of " << t << endl;
} else {
cout << s << " is not a subsequence of " << t << endl;
}
return 0;
}
```
输出结果为:
```
ace is a subsequence of abcde
```
阅读全文