Leetcode2486-追加字符以获得子序列

2023-11-02

双指针遍历即可。

class Solution {
public:
    int appendCharacters(string s, string t) {
        int n=s.size(),m=t.size();
        int l=0,r=0;
        while(l<n&&r<m){
            while(l<n&&s[l]!=t[r]) l++;
            if(l<n&&s[l]==t[r]) r++,l++;
        
        return m-r;
    }
};

时间复杂度:O(m+n)

空间复杂度:O(1)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Leetcode2486-追加字符以获得子序列 的相关文章

随机推荐

  • 【SpringBoot】过滤器,监听器,拦截器介绍

    文章目录 一 简介 1 过滤器 2 拦截器 3 监听器 二 如何创建 1 过滤器 2 监听器 3 拦截器 三 总结 一 简介 通过两幅图我们可以理解拦截器和过滤器的特点 1 过滤器 过滤器是在请求进入tomcat容器后 但请求进入servl
  • 环形缓冲区– Disruptor背后的数据结构

    环形缓冲区 Disruptor背后的数据结构 Disruptor是一个高性能的库 用于在线程之间传递消息 该库由LMAX Exchange公司在几年前开发和开源 他们创建了此软件来处理其零售金融交易平台中的巨大流量 超过600万TPS 在2
  • 微信小程序Mustache语法

    小程序开发的wxml里 用到了Mustache语法 所以 非常有必要把Mustache研究下 什么是Mustache Mustache是一个logic less 轻逻辑 模板解析引擎 它是为了使用户界面与业务数据 内容 分离而产生的 它可以
  • C++20的原子智能指针

    一 原子变量和智能指针 在前面学习时提到过智能指针本身不是线程安全的 因为虽然其计数器是线程安全控制但数据不是 这也就是说其在多线程中赋值时 会产生冲突 而原子变量恰恰能够解决这个问题 不过在早先的c 标准中 原子变量不支持智能指针 所以要
  • base64上传图片,并且限制上传图片大小,

    param file data return bool false string 判断base64文件大小 以及格式 public function upimgbase64 file data if preg match data s im
  • camunda使用指南

    参考 Camunda 快速入门 Camunda SpringBoot与进阶内容 camunda中文站 camunda官方英文文档 文章目录 使用流程 1 下载和安装 2 编辑流程 3 部署流程 使用 Camunda Modeler 部署流程
  • Skeleton Key(万能密码)与 Hook PasswordChangeNotify

    1 Skeleton Key 使用Skeleton Key 万能密码 可以对域内权限进行持久化操作 Skeleton Key特点 Skeleton Key被安装在64位域控服务器上 支持Windows Server2003 Windows
  • swagger中Schema(required = true)已过时问题

    在使用swagger生成openapi时 idea显示 required 已经过时了 Swagger将忽略对象字段上的 Schema required true 注释 解决方案 1 降低swagger版本 2 修改为 Schema requ
  • setInterval的停止与重新启动

    使用js处理问题的时候 我们可能会经常使用到setInterval 来进行定时任务或者轮询的操作 那么如何让setInterval停止和重新启动呢 下边的代码就可以实现的呦 如果有更好的方法 不吝赐教 定义定时任务 function fun
  • 百度API获取地理坐标

    楼主是在用R画地图的时候需要获取各个地点的地理坐标从而接触到百度API的 不过它也可以应用到很多其它方面 楼主实验室有前往不同地区进行采样的需求 那么就可以记录下采样地点后 通过百度API一次性获取所有地理坐标 从而减免了很多麻烦呢 那么鉴
  • 对无签名的APP进行签名 命令行签名

    下面是在命令行对app进行签名 就是那么简单
  • 实例分割新思路之SOLO v1&v2深度解析

    前言 实例分割一般有两种做法 一种是top down 既先检测 bbox 后在每个bbox中进行mask的分割 例如Mask R CNN 第二种为bottom up做法 先分割出每一个像素 再进行归类 本文介绍的两篇论文另辟蹊径 直接分割实
  • 彻底卸载Keil4和Keil5

    一 卸载 在keil安装目录下找到uninstall exe文件 点击卸载 卸载完后将该文件下的所有文件删除 二 清除注册表 按下windows R打开运行 输入regedit打开注册表 将HKEY CLASSES ROOT目录下的 所有U
  • 2020初步总结

    一晃来这快两年了 今年写的博客也还算比较勤快吧 最忙的应该是上半年 经历了忙成狗的阶段 下半年还算稍微好点 对今年的总结是 1 每个月保证出博客量在12篇以上 这点还是有保证的 最忙的5月的时候 也是能保证12篇 2 对相关的学习进行了深入
  • 深度学习模型参数量计算

    若你的模型parameters为7327930 则 7327930 4 Byte 1024 1024 27 95 MB
  • 【Git详解大全】

    文章目录 1 Git 概述 1 1 版本控制 2 Git常用命令 2 1 初始化本地库 2 3 添加到暂存区 2 4 提交本地库 2 5 修改文件 2 7 历史版本 3 分支操作 3 1 什么是分支 3 2 分支的操作 4 Git团队协作
  • theos linux环境,MAC OS X下的Linux环境

    关键字 HomeBrew 好比Windows下的Cygwin 安装Homebrew 该si胜过macport ruby e curl fsSL https raw githubusercontent com Homebrew install
  • 【知识分享】C语言应用-易错篇

    一 C语言简介 C语言结构简洁 具有高效性和可移植性 因此被广泛应用 但究其历史的标准定义 C语言为了兼容性在使用便利性作出很大牺牲 在 C陷阱与缺陷 一书中 整理出大部分应用过程中容易出错的点 本文为 C陷阱与缺陷 的浓缩版本 想要更详细
  • 009 5道例题讲解函数递归——“C”

    函数递归是什么 程序调用自身的编程技巧称为递归 recursion 递归做为一种算法在程序设计语言中广泛应用 一个过程或函数在其定义或说明中有直接或间接 调用自身的一种方法 它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问
  • Leetcode2486-追加字符以获得子序列

    双指针遍历即可 class Solution public int appendCharacters string s string t int n s size m t size int l 0 r 0 while l