专栏首页木又AI帮【leetcode刷题】T175-判断子序列

【leetcode刷题】T175-判断子序列

【题目】

给定字符串 s 和 t ,判断 s 是否为 t 的子序列。

你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。

字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。

示例 1:
s = "abc", t = "ahbgdc"
返回 true.

示例 2:
s = "axc", t = "ahbgdc"
返回 false.

【思路】

本题较为简单,直观来说,对于s中的每个字符,遍历是否依次在t中出现。

不太好说,看代码~~

【代码】

python版本

class Solution(object):
    def isSubsequence(self, s, t):
        """
        :type s: str
        :type t: str
        :rtype: bool
        """
        if len(s) > len(t):
            return False
        j = 0
        for si in s:
            while j < len(t):
                if si == t[j]:
                    break
                j += 1
            if j >= len(t):
                return False
            j += 1
        return True

C++版本

class Solution {
public:
    bool isSubsequence(string s, string t) {
        int j = 0;
        for(int i=0; i<s.size(); i++){
            while(j < t.size()){
                if(s[i] == t[j])
                    break;
                j++;
            }
            if(j >= t.size())
                return false;
            j++;
        }
        return true;
    }
};

本文分享自微信公众号 - 木又AI帮(gh_eaa31cab4b91),作者:木又

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【leetcode刷题】T77- 重复的子字符串

    给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。

    木又AI帮
  • 【leetcode刷题】T94-亲密字符串

    给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true ;否则返回 false 。

    木又AI帮
  • 【leetcode刷题】T208-平方数之和

    https://leetcode-cn.com/problems/sum-of-square-numbers

    木又AI帮
  • Python求解一元二次方程根

    本文使用Python实现一元二次方程求根公式,主要演示运算符和几个内置函数的用法,封面图片与本文内容无关。 def root(a, b, c, highmidd...

    Python小屋屋主
  • 数据结构算法操作试题(C++/Python)——串联所有单词的子串

    leetcode 链接:https://leetcode-cn.com/problems/substring-with-concatenation-of-all...

    莫斯
  • Hystrix工作流程解析

    首先我们看一下上方的这张图,这个图完整的描述了Hystrix的工作流程:1.每次调用都会创建一个HystrixCommand 2.执行execute或queue...

    Java学习录
  • leetcode 28 Implement strStr()

    @坤的
  • hdu1021

    @坤的
  • 【leetcode刷题】T94-亲密字符串

    给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true ;否则返回 false 。

    木又AI帮
  • leetcode: 47. Permutations II

    JNingWei

扫码关注云+社区

领取腾讯云代金券