文章目录

  • 一、题目描述
  • 二、解题思路
  • 三、代码

一、题目描述

1、题目描述
给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回 dictionary 中最长的字符串,该字符串可以通过删除 s 中的某些字符得到。

如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串。

示例 1:
输入:s = “abpcplea”, dictionary = [“ale”,“apple”,“monkey”,“plea”]
输出:“apple”

示例 2:
输入:s = “abpcplea”, dictionary = [“a”,“b”,“c”]
输出:“a”

题目链接

二、解题思路

先将数组中字符串按题意排序,然后依次判断即可。

三、代码

class Solution {bool check(const string& s, const string& d) {int i = 0, j = 0;while(i < s.size() && j < d.size()) {if(s[i] == d[j]) {i++, j++;}else {i++;}}return j == d.size();}
public:string findLongestWord(string s, vector<string>& d) {sort(d.begin(), d.end(), [&](const string& a, const string& b) {if(a.size() == b.size()) {return a < b;}return a.size() > b.size();});for(int i = 0;i < d.size();i++) {if(check(s, d[i])) {return d[i];}}return "";}
};

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

  1. LeetCode 524. 通过删除字母匹配到字典里最长单词(双指针)

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

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

    我自己的方法: 1.依次从字典里取出每一个单词,在字符串 s 中进行查找. 查找的过程中可能出现的问题有: 字母出现多次,只找到最前面的字母,顺序上会有混乱 字母都找到了,但是都是同一个字母 简而言之 ...

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

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

  4. Leetcode刷题100天—524. 通过删除字母匹配到字典里最长单词(双指针)—day38

    前言: 作者:神的孩子在歌唱 大家好,我叫运智 524. 通过删除字母匹配到字典里最长单词 难度中等192收藏分享切换为英文接收动态反馈 给你一个字符串 s 和一个字符串数组 dictionary 作 ...

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

    leetcode力扣刷题打卡 题目:524. 通过删除字母匹配到字典里最长单词 描述:给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回 dictionary 中最长的字符串,该 ...

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

    524. 通过删除字母匹配到字典里最长单词 给你一个字符串 s 和一个字符串数组 dictionary 作为字典,找出并返回字典中最长的字符串,该字符串可以通过删除 s 中的某些字符得到. 如果答案不 ...

  7. JAVA中返回值为字母时_LeetCode#524通过删除字母匹配到字典里最长单词-java中CompareTo方法用法以及Comparator中Compare方法返回值...

    import java.util.Collections; import java.util.Comparator; import java.util.List; /* 524. 通过删除字母匹配到字 ...

  8. 第十二Leetcode每日刷题——524. 通过删除字母匹配到字典里最长单词

    给你一个字符串 s 和一个字符串数组 dictionary ,找出并返回 dictionary 中最长的字符串,该字符串可以通过删除 s 中的某些字符得到. 如果答案不止一个,返回长度最长且字母序最小 ...

  9. leetcode记录-524-通过删除字母匹配到字典里最长单词-双指针

    524.通过删除字母匹配到字典里最长单词 思路 理解题意是一大难点...对于list中的字符串,如果可以由s删除一些字符得到,那么这个字符串初步符合标准,把他和str(初始为空)的比较,如果其长度更长 ...

最新文章

  1. TMS320F28335时钟(1)
  2. fatal error C1001: INTERNAL COMPILER ERROR
  3. PLSQL 申明和游标
  4. java 二维数据结构_JAVA描述算法和数据结构(01):稀疏数组和二维数组转换
  5. 汉字转换成拼音的代码(asp版)
  6. pillow支持python 2和python 3_python3读取图像并可视化的方法(PIL/Pillow、opencv/cv2)...
  7. firewalld配置与使用
  8. java简单的事务处理_JAVA之JDBC简单事务处理
  9. Java RMI远程方法调用学习总结
  10. sketchup ruby编程之绘制梯段
  11. 恒生电子Java开发岗的面试题汇总
  12. 原来把300页Word转成PPT,只需要一个键!别再复制粘贴了
  13. java编程进阶类_进阶Java编程(9)反射与类操作
  14. 高手进阶!终极内存技术指南
  15. 微信官方发红包DEMO
  16. docker的安装以及跑本地项目代码步骤说明
  17. Russ Cox:这不是Go项目的标准布局 | Gopher Daily (2021.04.28) ʕ◔ϖ◔ʔ
  18. JavaScript数据类型、引用类型、操作符、语句
  19. 【面试大全-MQ】-消息队列
  20. 技术员常用的工具晨枫U盘维护工具V2.0版

热门文章

  1. 密码服务平台技术架构
  2. 七禾服务器显示器,如何用Excel做直方图
  3. 利用python进行零售商品数据分析
  4. CSS3的srcset size属性1x 2x 3x
  5. bash: 未预期的符号“newline”附近有语法错误
  6. 一加 6T 是如何搭上美国运营商的快车的?
  7. 萧县机器人_再见了,快递员、再见了...盘点萧县市未来最有可能失业的一大批人!...
  8. Drill查询复杂数据
  9. 常见希腊字母的读音和打法
  10. Golang操作sqlite3数据库教程