zoukankan      html  css  js  c++  java
  • [leetcode]392. 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 sis 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?

    题意:

    给定串串s和t, 判断s是否是t的subsequence

    思路:

    指针count用来scan串串s

    指针i用来scan串串t

    从左至右,若t当前的字符等于s当前字符,count++

    若count等于s.length(),说明s中的每个字符都包含在串串t中,最终说明s是t的subsequence

    代码:

     1 class Solution {
     2     public boolean isSubsequence(String s, String t) {
     3         if(s == null || s.length() == 0) return true;
     4         int count = 0;
     5         for(int i = 0; i<t.length() ; i++){
     6             if(t.charAt(i) == s.charAt(count)){
     7                 count++;
     8                 if(count == s.length()){return true;}
     9             }
    10         }
    11         return false;
    12     }
    13 }
  • 相关阅读:
    七种程序设计模式
    理清JavaScript正则表达式
    采用管道处理HTTP请求
    AngularJS之Service4
    Net Core-Razor
    中间件(Middleware)
    Redis集群明细文档(转)
    nginx 301跳转到带www域名方法rewrite(转)
    Redis启动多端口,运行多实例(转)
    web框架之Spring-MVC环境搭建(转)
  • 原文地址:https://www.cnblogs.com/liuliu5151/p/9054148.html
Copyright © 2011-2022 走看看