Leetcode 524. 通过删除字母匹配到字典里最长单词

LeetCode 524. 通过删除字母匹配到字典里最长单词 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。示例 1:输入: s = "abpcplea", d = ["ale","apple","monkey","plea"] 输出: "apple" 示例 2:输入: s = "abpcpl 阅读详情

Leetcode 524. 通过删除字母匹配到字典里最长单词524. 通过删除字母匹配到字典里最长单词

给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。

示例 1:

输入:
s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”]

输出:
“apple”

示例 2:

输入:
s = “abpcplea”, d = [“a”,“b”,“c”]

输出:
“a”

说明:

所有输入的字符串只包含小写字母。
字典的大小不会超过 1000。
所有输入的字符串长度不会超过 1000。
class Solution {
    public String findLongestWord(String s, List<String> d) {
        char[] sc = s.toCharArray();
        String result = "";//记录结果
        for(String ds: d){
        	//判断遍历的当前字符串如结果串的比较
            if(result.length() > ds.length()||(result.length() == ds.length()&&result.compareTo(ds) < 0)){
                continue;
            }
            //判断是否有符合要求的字符
            if(isSubStr(sc,ds)){
                result = ds;
            }
        }
        return result;
    }

    public boolean isSubStr(char[] c,String s){
        for(int i = 0,k = 0;i < c.length;i++){
            if(c[i] == s.charAt(k)){
                k++;
                if(k == s.length()){
                    return true;
                }
            }
        }
        return false;
    }
}

执行结果:
通过
显示详情
执行用时:21 ms, 在所有 Java 提交中击败了85.90% 的用户
内存消耗:39.4 MB, 在所有 Java 提交中击败了83.63% 的用户

【双指针】–leetcode(524)–通过删除字母匹配到字典里最长单词 题目描述 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例1: 输入: s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”] 输出: “apple” 示例2: 输入: s = “abpcplea”, d = [“a”,“b”,“c”] 输出: “a” 解题思路 首先将字符串字典按照字母长度和字典顺序排序,然后使用双指针分别指向字符串和给定字典的字符串,若双指针指向的字符相同,则指向字典的字符串指针 立即下载

相关推荐

UE4_SpeedTree Shader源码分析

目录 1.UMaterialExpressionSpeedTree::Compile 2.Compiler->SpeedTree 3.GetSpeedTreeVertexOffset 4.Scene中的SpeedTree应用 (Scene->UpdateSpeedTreeWind) 5.GetSpeedTreeVertexOffsetInner 由于之后做风场,也需要在S...

zzgyy123的专栏 2631

524. 通过删除字母匹配到字典里最长单词

通过删除字母匹配到字典里最长单词 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = "abpcplea", d = ["ale","apple","monkey","plea"] 输出: "apple" 示例 2:

qq_36059306的博客 403

开源处理器Rocket的分支预测机制研究与性能评估(二)

Rocket是基于RISC-V指令集架构的开源处理器,具有分支预测功能,其实现了GShare分支预测机制,在分析Rocket处理器分支预测处理过程、分支预测实现原理的基础上,利用模拟器进行了性能测试,并依据测试结果,对Rocket处理器分支预测参数配置给出建议。

leishangwen的专栏 5691

Leetcode 524 通过删除字母匹配到字典里最长单词

Leetcode 524 通过删除字母匹配到字典里最长单词 问题重述 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”] 输出: “apple” 示例 2: 输入: s = “abpcplea”, d = [“a”,“b”,“c”] 输出

UPC YR的博客 236

基于ROS的机械臂手眼标定-Aruco使用与相机标定

基于ROS的机械臂手眼标定-Aruco使用与相机标定 折腾了一段时间的机械臂的手眼标定,相关资料挺多的,但使用起来都比较复杂,新手一般比较难搞懂。于是想做一个比较简单易懂易用的手眼标定程序。 程序都是Copy的开源代码,所以也开源出来: 开源地址:https://gitee.com/ohhuo/handeye-calib 作为手眼标定中的重要一环,相机中标定板位姿关系获取直接影响标定精度,我们使用aruco这个开源程序来实现坐标的获取。 #mermaid-svg-WkFpFkV4QqzXMvJ4 .labe

生活不止眼前的苟且 1万+

AI算力网络与通信领域流量分析:优化策略探讨_副本

今天的AI就像一个"超级吃货",每天要"吃"掉海量数据、“消耗"巨量算力——训练一个千亿参数的大模型,可能需要上万块GPU同时工作数周,其间产生的数据传输量足以填满数百万个1TB硬盘。这些GPU和计算节点通过网络连接形成"AI算力网络”,而数据在节点间的流动就是"通信流量"。如果把算力比作AI的"肌肉",那流量就是"血液"——血液不通畅,肌肉再强也使不上劲。

AI天才研究院 1198

LeetCode 524. 通过删除字母匹配到字典里最长单词(python题解)

LeetCode 524. 通过删除字母匹配到字典里最长单词(python题解)1 题目2 示例3 分析4 题解 1 题目 给定一个字符串s和一个字符串字典d,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 说明 (1)所有输入的字符串只包含小写字母。 (2)字典的大小不会超过 1000。 (3)所有输入的字符串长度不会超过 1000。 2 示例 示例 1: 输入: s = “abpcplea”

WenDong1997的博客 581

Phantom Omni的力与力矩操作

*本说明为对Phantom Omni的力与力矩操作 ****************虚拟夹具的力读取与控制************************ 1、首先力的读取要声明【全局变量】 hduVector3Dd F;//三维矢量力(x,y,z三个方向的力) 2、对力的控制可以采用配置函数Set()与Get()函数; 3、对力觉的控制或读取操作需要放到【回调帧】开始与结束之间,如例子

xuliang355的博客 2562

Java实现 LeetCode 524 通过删除字母匹配到字典里最长单词(又是一道语文题)

524. 通过删除字母匹配到字典里最长单词 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”] 输出: “apple” 示例 2: 输...

南 墙 1万+

软考中级网络工程师通关指南:从学习到实战

本文是软考中级网络工程师备考实用指南,先介绍备考前准备,包括考试时间、形式、分值等基本信息,及引导读者评估自身基础以制定学习计划;再推荐官方教材、辅导书籍、在线课程平台和学习社区等优质资源。随后梳理网络协议、设备配置、安全、规划设计等重点知识,剖析企业网络故障排查与园区网络设计典型案例。还分享真题使用、解题技巧、错题本建立等习题解答方法,给出分阶段备考、时间安排与总结反思的备考计划,最后提供考场答题顺序、检查及心态调整策略,助力考生高效备考、顺利通关。

邓邓子的博客 1852

9.6华为OD机试真题 新系统 - 少儿爬山闯关积分游戏 (Java/Py/C/C++/Js/Go)

2026 华为OD机试真题9月6日华为OD上机新系统考试真题 100 分题型。

算法大师! 858

leetcode 524. 通过删除字母匹配到字典里最长单词

Solution。

m0_49013185的博客 1119

NX二次开发-用户自定义资源栏选项卡RegisterActivationCallback

NX二次开发-用户自定义资源栏选项卡RegisterActivationCallback

阿飞2018 1385

Leetcode 524. 通过删除字母匹配到字典里最长单词 C++

Leetcode 524. 通过删除字母匹配到字典里最长单词 题目 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 测试样例 示例 1: 输入: s = "abpcplea", d = ["ale","apple","monkey","plea"] 输出: "apple" 示例 2: 输入: s = "abpcplea", d = ["a","b","c"]

weixin_43750513的博客 300

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

24/12/24 力扣每日一题 # LeetCode 524. 通过删除字母匹配到字典里最长单词 全网最详细解释

通过合理利用最小堆的特性,我们能够高效地管理苹果的过期时间,确保每次都优先吃掉即将腐烂的苹果,从而最大化吃掉的苹果数量。这道题考察了对优先队列(堆)的应用,以及如何在有限条件下优化资源的使用。掌握了这种思路和技巧,不仅能解决类似的问题,还能提升对数据结构的理解和应用能力。

qq_17405059的博客 884

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LeetCode 524 通过删除字母匹配到字典里最长单词

时空平衡:线性时间复杂度,常数空间,适合大规模数据。逻辑简洁:双指针法直观易懂,避免复杂数据结构。这道题教会我们如何用双指针的 “舞蹈” 优雅地检查子序列,同时用优先级规则筛选最优解。就像整理书架:先按高度(长度)排序,再按书名(字母序)排列,最终找到最合适的 “那本书”。下次遇到字符串匹配问题时,记住双指针的魔力:让字符在遍历中自然匹配,让优先级在比较中浮出水面。代码的简洁,正是算法之美的最佳注脚!📜✨。

qq_64604732的博客 1074

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Leetcode 524. Longest Word in Dictionary through Deleting 通过删除字母匹配到字典里最长单词

Leetcode 524. Longest Word in Dictionary through Deleting 通过删除字母匹配到字典里最长单词524. Longest Word in Dictionary through Deleting题目描述示例:解答代码 524. Longest Word in Dictionary through Deleting 题目描述 Given a stri...

importsys的博客 337

leetCode_524、通过删除字母匹配到字典里最长单词

文章目录前言原题题目题目案例题目分析代码解法易错提醒 前言 言出必行的我今日的leetCOde每日一题来了,今日为大家带来的是力扣的524题,通过删除字母匹配到字典里最长单词,大家和我一起加油呀!今日没有取研究多种做法,因为我一次成功啦! 原题题目 给你一个字符串 s 和一个字符串数组 dictionary 作为字典,找出并返回字典中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 ps:如果答案不止一个,返回长度最长且字典序最小的字符串。如果答案不存在,则返回空字符串。 题目案例

qq_43325476的博客 503

LeetCode-524. 通过删除字母匹配到字典里最长单词

524. 通过删除字母匹配到字典里最长单词 【题目】: 【代码】: class Solution { public String findLongestWord(String s, List<String> d) { String res=""; Collections.sort(d); for(St...

芝士不知世的笔记 432

Leetcode 524、通过删除字母匹配到字典里最长单词

Problem Source : https://leetcode-cn.com/problems/longest-word-in-dictionary-through-deleting/ Solution Source : https://github.com/hujingbo98/algorithm/blob/master/source/leetcode/0524_LongestWordInDictionaryThroughDeleting.cpp 524、通过删除字母匹配到字典里最长单词 给你一个字.

博弈的博客 141

Leetcode524 通过删除字母匹配到字典里最长单词

Leetcode 524 力扣 题目: 给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回dictionary 中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。 如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串。 示例: 题解: 方法:双指针 分析:双指针方法,主要可以用于遍历数组,协同工作:转载他人github整理相关题目 CS-Notes/Leetcode 题解 - 双指针.md at master · C..

Utopia 4623

LeetCode 524.通过删除字母匹配到字典里最长单词

通过删除字母匹配到字典里最长单词 最长子序列 Java版本 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = "abpcplea", d = ["ale","apple","monkey","plea"] 输出: "appl...

pitt1997的博客 580

Leetcode 刷题之路 之 算法思想 一、双指针 : 7) 524. 通过删除字母匹配到字典里最长单词

题目描述: 524. 通过删除字母匹配到字典里最长单词 难度:中等 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = "abpcplea", d = ["ale","apple","monkey","plea"] 输出: "apple" 示例2: 输入: s = "abpcplea", d = ["a","b",.

qq_41760343的博客 147

524.通过删除字母匹配到字典里最长的单词(力扣leetcode) 博主可答疑该问题

注意点: 1.List的使用,获取"apple"的字符串,list.get(1) 2.如果是查询等,一般有两个对象,一个对象分配个指针,如果只是求和比较,直接就可以在一个对象上完成,一般就是双头指针跑。 第一个暴力解法: 1,找出s的所有情况,依次在字典里进行比较。找出最长的,并出现次序在其前的。 一段字符的所有情况算法(只删除一个或多个字符,不能将字符交换顺序) List<String> l=new ListArrary<>(); str=""; gen...

qq_40262372的博客 311

LeetCode524. 通过删除字母匹配到字典里最长单词

通过删除字母匹配到字典里最长单词 给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。 示例 1: 输入: s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”] 输出: “apple” 来源:力扣(L...

码农在途的博客 257
上一篇: Leetcode 392.判断子序列
下一篇: Leetcode 67.二进制求和
EIUC_Thread
博客等级 码龄7年 96粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值