每日一题——LeetCode1455.检查单词是否为句中其他单词的前缀

方法一 js函数slice()

 将字符串按空格符分割为单词数组,记searchWord的长度为n,分割每个单词的前n位看是否和searchWord匹配

var isPrefixOfWord = function(sentence, searchWord) {let res = sentence.split(" ")for(i = 0 ; i < res.length ; i++) {if (res[i].slice(0,searchWord.length) === searchWord) {return i + 1}}return -1
}

消耗时间和内存情况:

方法二 双指针:

来自leetcode官方题解
链接:1455.检查单词是否为句中其他单词的前缀

使用 start 记录单词的起始,end记录单词结尾的下一个位置。我们遍历字符串 sentence并不断地分割单词,对于区间[start,end) 对应的单词,判断它是否存在某一前缀等于 searchWord,如果存在直接返回该单词对应的下标 index;如果遍历完所有单词都不符合条件,返回 −1。

var isPrefixOfWord = function(sentence, searchWord) {let n = sentence.length, index = 1, start = 0, end = 0;while (start < n) {while (end < n && sentence[end] !== ' ') {end++;}if (isPrefix(sentence, start, end, searchWord)) {return index;}index++;end++;start = end;}return -1;
}const isPrefix = (sentence, start, end, searchWord) => {for (let i = 0; i < searchWord.length; i++) {if (start + i >= end || sentence[start + i] !== searchWord[i]) {return false;}}return true;
};

消耗时间和内存情况:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687434.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

线程池工作过程

线程池工作流程 线程池的处理流程总结 线程池的处理流程 当提交一个新任务到线程池时&#xff0c;线程池的处理流程如下&#xff1a; 1、线程池判断核心线程池里的线程是否都在执行任务。如果不是&#xff0c;则创建一个新的工作线程来执行任务。如果核心线程池里的线程都在执…

fgets的使用方法详解

fgets的使用 文章目录 fgets的使用前言&#xff08;吹水&#xff0c;不看也罢&#xff09;fgets 的基本语法使用示例fgets() 对输入的处理的特点gets() 与 fgets() 的主要区别 总结 前言&#xff08;吹水&#xff0c;不看也罢&#xff09; 鼠鼠今天在B站上大学的时候&#xff…

基于单片机的智能交通控制系统研究

摘 要:随着汽车保有量不断增加,对交通提出新的要求和挑战,针对愈发拥挤的交通、有限的资源和环境的压力,需积极消 除依附原有滞后方法满足交通需求,选用合理、高效的交通控制手段,优化和改善交通控制运行现状,是当下控制的重点内 容。结合交通实际需求,以单片机为核心基…

天翼云盘 误封解决 部分任务下载异常 违反信安规则

背景 从网上下载别人分享的文件&#xff0c;部分下载不了&#xff0c;提示部分任务下载异常&#xff0c;反复点重试在之前不成功的之中又成功了几个&#xff0c;然后就再也成功不了了&#xff0c;点进去发现提示违反信安规则。 原因 天翼云盘大概是有些信安规则&#xff0c;…

Vue2:组件间通信框架Vuex

一、原理图及作用 功能介绍&#xff1a; 简单说就是Vue项目中&#xff0c;各个组件间通信的一种框架 相较于之前的全局事件总线&#xff0c;该框架更实用&#xff01; 提高了代码的复用率&#xff0c;把核心业务代码&#xff0c;集中到store中&#xff0c;这样&#xff0c;一处…

python——多线程的共享变量用法

文章目录 多线程共享变量锁&#xff08;Locks&#xff09;示例事件&#xff08;Events&#xff09;示例条件变量&#xff08;Condition Variables&#xff09;示例队列&#xff08;Queues&#xff09;示例阻塞传输数据非阻塞传输数据 多线程共享变量 在Python中&#xff0c;如…

掌上新闻随心播控,HarmonyOS SDK助力新浪新闻打造精致易用的资讯服务新体验

原生智能是HarmonyOS NEXT的核心亮点之一&#xff0c;依托HarmonyOS SDK丰富全面的开放能力&#xff0c;开发者只需通过几行代码&#xff0c;即可快速实现AI功能。新浪新闻作为鸿蒙原生应用开发的先行者之一&#xff0c;从有声资讯入手&#xff0c;将基于Speech Kit朗读控件上线…

第98讲:MHA高可用集群VIP地址配置与漂移实践

文章目录 1.为甚要给MHA高可用集群配置VIP地址2.配置MHA高可用集群VIP漂移地址2.1.准备MHA VIP地址的脚本2.2.配置MHA指定VIP地址的脚本2.3.手动在主库上配置VIP地址2.4.重启MHA2.5.模拟主库故障观察VIP是否会自动切换 1.为甚要给MHA高可用集群配置VIP地址 当主库发生故障&…

从kafka如何保证数据一致性看通常数据一致性设计

一、前言 在数据库系统中有个概念叫事务&#xff0c;事务的作用是为了保证数据的一致性&#xff0c;意思是要么数据成功&#xff0c;要么数据失败&#xff0c;不存在数据操作了一半的情况&#xff0c;这就是数据的一致性。在很多系统或者组件中&#xff0c;很多场景都需要保证…

【前端工程化面试题目】说说你对 SSG 的理解

注意 ssg 和 ssr 是不同的&#xff0c;具体请参考这篇文章。 SSG 是静态站点生成器&#xff08;Static Site Generator&#xff09;的缩写&#xff0c;它是一种用于构建静态网站的工具或框架。静态站点生成器将一组源文件&#xff08;通常是 Markdown、HTML、CSS、JavaScript 等…

计算机网络——18无连接传输UDP

无连接传输UDP UDP “尽力而为的”服务&#xff0c;报文段可能 丢失送到应用进程的报文段乱序 无连接 UDP发送端和接收端之间没有握手每个UDP报文段都被独立的处理 UDP被用于 流媒体DNSSNMP 在UDP上实现可靠传输 在应用层增加可靠性应用特定的差错格式 UDP&#xff1a;用户…

Positive SSL 证书介绍

Positive SSL 是一种受欢迎的 SSL 证书&#xff0c;提供了卓越的安全性、性价比和品牌信任。以下是对 Positive SSL 在这些方面的简要介绍&#xff1a; 1. 安全性&#xff1a; Positive SSL 证书采用强大的加密技术&#xff0c;确保网站和用户之间的数据传输是安全的。它使用…

turn服务器debug

turn服务器正常能连通的调用堆栈 turn_port.cc AddRequestAuthInfo check 崩溃 有问题的turn msg type是259 request type 是3 用不了的turn 服务器turnmessage type 275

Mybatis源码分析

Mybatis源码分析 第一章、回顾 1. 课程中工具的版本 1. JDK8 2. IDEA2018.3 3. Maven3.5.3 4. MySQL 5.1.48 --> MySQL 5Mybatis 3.4.62. Mybatis开发的简单回顾 1. Mybatis做什么&#xff1f;Mybatis是一个ORM类型框架&#xff0c;解决的数据库访问和操作的问题&#xf…

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之OS模块配置详解(中)

OS模块配置详解 - 中 一、OS模块配置实操1.1 打开OS Configuration1.2 创建OS Cores1.3 添加系统定时器1.4 添加一个Os Application1.5 添加几个Task1.5.1 添加Init Task1.5.2 添加BSW Task1.5.3 添加APP Task二、中断分布调整与设置中断号2.1 调整中断分布2.2 正确设置中断号2…

OpenCV介绍和使用

一:简介 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习软件库,广泛应用于图像处理、计算机视觉、机器学习等领域。它包含了大量的函数和工具,可以用于图像读取、显示、处理、特征提取、目标检测等任务。 OpenCV最初是由Intel公司开发的…

Github:分享一款开源的跨平台多功能远程控制和监控工具Spark

目录 1、设备列表及操作列表 2、登录机器 Shell 执行命令 3、桌面远程访问 4、远程设备的进程管理 5、远程设备文件管理 今天要给大家推荐一个开源的跨平台多功能远程控制和监控工具&#xff1a;Spark。 目前该项目处于不维护状态&#xff0c;大家可以自己根据需要进行扩…

代码随想录 Leetcode763. 划分字母区间

题目&#xff1a; 代码(首刷看解析 2024年2月18日&#xff09;&#xff1a; class Solution { public:vector<int> partitionLabels(string s) {int hash[27] {0};for (int i 0; i < s.size(); i) {hash[s[i] - a] i;}vector<int> res;int left 0;int righ…

PyTorch使用Tricks:学习率衰减 !!

文章目录 前言 1、指数衰减 2、固定步长衰减 3、多步长衰减 4、余弦退火衰减 5、自适应学习率衰减 6、自定义函数实现学习率调整&#xff1a;不同层不同的学习率 前言 在训练神经网络时&#xff0c;如果学习率过大&#xff0c;优化算法可能会在最优解附近震荡而无法收敛&#x…

【开源】SpringBoot框架开发智能教学资源库系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 课程档案模块2.3 课程资源模块2.4 课程作业模块2.5 课程评价模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 课程档案表3.2.2 课程资源表3.2.3 课程作业表3.2.4 课程评价表 四、系统展示五、核心代…