#python练习#leetcode392. Is Subsequence【贪心】

来源:互联网 发布:h5制作软件下载 编辑:程序博客网 时间:2024/06/07 09:44

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.

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?

Credits:
Special thanks to @pbrother for adding this problem and creating all test cases.


很像是不知道那百辈子之前双指针

思想很简单

编码很简单

自己想的 题解略

简直是增强自信用的

class Solution(object):    def isSubsequence(self, s, t):        """        :type s: str        :type t: str        :rtype: bool        """        slen=len(s)        tlen=len(t)        if slen==0:            return True        if tlen==0:            return False        sp=0        for i in t:            if s[sp]==i:                sp=sp+1            if sp==slen:                return True        return False



原创粉丝点击