求star

开源不易,喜欢请点个star吧

Ocean Han
243 字
1 分钟
Leetcode->判断子序列
2022-08-04

题目#

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

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

进阶:

如果有大量输入的 S,称作 S1, S2, … , Sk 其中 k >= 10亿,你需要依次检查它们是否为 T 的子序列。在这种情况下,你会怎样改变代码?

示例 1:

输入:s = "abc", t = "ahbgdc"
输出:true

示例 2:

输入:s = "axc", t = "ahbgdc"
输出:false

提示:

  • 0 <= s.length <= 100
  • 0 <= t.length <= 10^4
  • 两个字符串都只由小写字符组成。

解题:key:#

①双指针#

/**
 * @param {string} s
 * @param {string} t
 * @return {boolean}
 */
var isSubsequence = function (s, t) {
    let p1 = 0, p2 = 0
    while (p1 < s.length && p2 < t.length) {
        if(s[p1] === t[p2]){
            p1++
        }
        p2++
    }
    return !(p1 < s.length)
};
Leetcode->判断子序列
https://blog.oceanh.top/posts/algorithm/判断子序列/
作者
Ocean Han
发布于
2022-08-04
许可协议
CC BY-NC-SA 4.0
最后修改时间
2024-08-10 10:08:49