392. Is Subsequence 难度:medium

来源:互联网 发布:最好的网络云盘 编辑:程序博客网 时间:2024/06/05 10:02

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 tt 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.


思路:

只要用两个指针来判断当前两个字符串中的字符是否相等即可。


程序:

class Solution {public:    bool isSubsequence(string s, string t) {        int s1 = s.size();        int t1 = t.size();                int i = 0;        int j = 0;                while(i < s1&&j < t1)        {            if(s[i] != t[j])                j++;            else            {                i++;                j++;            }        }        return i == s1 ? true : false;            }};


0 0
原创粉丝点击