392. Is Subsequence

xiaoxiao2021-02-28  90

Given a string s and a string t, check if s is subsequence of t.

You may assume that there is only lower case English letters in both s and t. t is potentially a very long (length ~= 500,000) string, and s is a short string (<=100).

A subsequence of a string is a new string which is formed from the original string by deleting some (can be none) of the characters without disturbing the relative positions of the remaining characters. (ie, "ace" is a subsequence of "abcde" while "aec" is not).

Example 1: s = "abc", t = "ahbgdc"

Return true.

Example 2: s = "axc", t = "ahbgdc"

Return false.

//遍历字符串t, 使t中每个字符与子串s的第pos个位置的字符匹配, //pos从0开始, 每当匹配成功一个字母, 继续遍历t, pos的位置增1,直到字符串t遍历完毕 class Solution { public: bool isSubsequence(string s, string t) { int lent = s.length(); int pos = 0; for(int i = 0; i!=t.length(); ++i){ if(t[i] == s[pos]) pos++; }//for return pos == lent ? true : false;//最终pos值与s的长度相等,则成功查找到子串 } };

转载请注明原文地址: https://www.6miu.com/read-54403.html

最新回复(0)