当前位置: 首页 > article >正文

leetcode 392.判断子序列

思路:双指针。

两个指针分别指向两个字符串的首部,然后我们判断这两个指针现在指向的位置的字符是不是相同的;如果相同我们就两个指针同时移动;如果不同,我们就移动长度较大的那个字符串的指针向右。直至我们的指针有一个遍历完结束。画上计数器,如果我们的计数器的次数和子序列的长度是一样的,说明我们已经遍历完了子序列并且t中有一个子序列可以和s相同。

特判:如果s的长度>t的长度,那么这个时候就是false;如果s是空的,那么就是true。

class Solution {
    public boolean isSubsequence(String s, String t) {
        int l=0;
        int r=0;
        if(s.equals(""))
        return true;
        if(s.length()>t.length())
        return false;
        int cnt=0;
        while(l<=s.length()-1&&r<=t.length()-1){
            if(s.charAt(l)==t.charAt(r)){
                cnt++;
                l++;
                r++;
                if(cnt==s.length()){
                    return true;
                }
            }
            else{
                r++;
            }
        }
        return false;
    }
}


http://www.kler.cn/a/312473.html

相关文章:

  • 代码随想录算法训练营第三十九天-动态规划-213. 打家劫舍 II
  • 运算符重载(输出运算符<<) c++
  • 深入探讨:服务器如何响应前端请求及后端如何查看前端提交的数据
  • 解锁微服务:五大进阶业务场景深度剖析
  • shell脚本
  • 【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南
  • MATLAB绘图:5.三维图形
  • 力扣53-最大子序和(Java详细题解)
  • SpringBoot 入门实践
  • Django+React+Neo4j实现的地质领域知识图谱系统
  • CentOS7更新YUM源
  • 9.20哈好
  • 算法【双向广搜】
  • QT Layout布局,隐藏其中的某些部件后,不影响原来的布局
  • 【数据结构】5——哈夫曼树(Huffman Tree)
  • Linux网络——手撕TCP服务器,制定应用层协议,实现网络版计算器
  • websocketpp服务器搭建
  • 使用knn算法对iris数据集进行分类
  • 人力资源数据集分析(一)_t-test、卡方检验和描述性统计
  • Spring Cloud常见面试题
  • 电子电气架构---智能汽车应该是怎么样的架构?
  • 24.9.18学习笔记
  • opengl-redbook环境搭建(静态库)
  • 『功能项目』事件中心处理怪物死亡【55】
  • Vue3:props实现组件通信
  • react 创建react项目