zoukankan      html  css  js  c++  java
  • #Leetcode# 392. Is Subsequence

    https://leetcode.com/problems/is-subsequence/

    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.

    Follow up:
    If there are lots of incoming S, say S1, S2, ... , Sk where k >= 1B, and you want to check one by one to see if T has its subsequence. In this scenario, how would you change your code?

    class Solution {
    public:
        bool isSubsequence(string s, string t) {
            int ls = s.length(), lt = t.length();
            if(!ls) return true;
            if(!lt && ls) return false;
            
            int pos = 0, temp = 0;
            while(pos <= ls && temp <= lt) {
                if(s[pos] == t[temp]) 
                    pos ++;
                temp ++;
            }
            return pos == ls + 1;
        }
    };
    

      

  • 相关阅读:
    Spiral Matrix
    Merge Intervals
    Edit Distance
    Insertion Sort List
    Add Binary
    Partition List
    Binary Tree Postorder Traversal
    单向链表反转
    Facebook Hacker cup Qualification round Problem 1
    判断二叉树是否为平衡二叉树
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/12103877.html
Copyright © 2011-2022 走看看