本文共 729 字,大约阅读时间需要 2 分钟。
解题思路: 同时遍历两个字符串,使用双指针,一个遍历t,一个遍历s是否能与t匹配,直到某一个遍历结束,观察s是否遍历结束,结束说明是子序列,否则不是,代码如下:
class Solution { public: bool isSubsequence(string s, string t) { // 定义长度 int len1 = s.length(), len2 = t.length(); if(len1 > len2) { return false; } // 定义索引 int index1 = 0, index2 = 0; while(index1 < len1 && index2 < len2) { // 如果当前位置相等,更新s的索引 if(s[index1] == t[index2]) { index1 ++; } index2 ++; } // 返回是否遍历完s return index1 >= len1; }};/*作者:heroding链接:https://leetcode-cn.com/problems/is-subsequence/solution/ctan-xin-by-heroding-gbcp/来源:力扣(LeetCode)著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。*/