这道题目的关键是,如果找到了前缀,就整个单词就只留下前缀,剩下的部分扔掉,如果没有找到前缀,整个单词都留下。

string replaceWords(vector<string>& dict, string sentence) {unordered_set<string> unst(dict.begin(), dict.end());string temp,result;for (unsigned i = 0; i < sentence.size(); ++i) {//快速制作前缀temp = "";while (sentence[i] != ' ' && i < sentence.size()) {temp += sentence[i];if (unst.find(temp) != unst.end()) {//此时已经找到了前缀了break;}i++;}//如果没有找到前缀,此时指针指向 空格,就不会进入下个循环//加到结果上面result += temp;result += " ";//如果不判断,时间会加快,但是最后会多一个空格while (sentence[i] != ' ' && i < sentence.size()){++i;}//将整个单词跨过去。直到遇到空格    }return result.substr(0, result.size() - 1);}

2022-1-29 Leetcode 648.单词替换相关推荐

  1. Leetcode 648.单词替换(Replace Words)

    Leetcode 648.单词替换 1 题目描述(Leetcode题目链接)   在英语中,我们有一个叫做 词根(root)的概念,它可以跟着其他一些词组成另一个较长的单词--我们称这个词为 继承词( ...

  2. LeetCode 648. 单词替换

    文章目录 一.题目 1.题目描述 2.基础框架 3.原题链接 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 三.本题小知识 四.加群须知 一.题目 1.题目描述   在英语中,我们有一个叫 ...

  3. Leetcode 648.单词替换

    单词替换 在英语中,我们有一个叫做 词根(root)的概念,它可以跟着其他一些词组成另一个较长的单词--我们称这个词为 继承词(successor).例如,词根an,跟随着单词 other(其他),可 ...

  4. LeetCode 648. 单词替换(Trie树)

    1. 题目 在英语中,我们有一个叫做 词根(root)的概念,它可以跟着其他一些词组成另一个较长的单词--我们称这个词为 继承词(successor).例如,词根an,跟随着单词 other(其他), ...

  5. leetcode每日一题--前缀树;前缀哈希;深搜;面试题 08.04. 幂集;648. 单词替换面试题 01.09. 字符串轮转;剑指 Offer II 062. 实现前缀树

    leetcode每日一题 ps:今天的每日一题没意思,简单的模拟,自己换一道 面试题 08.04. 幂集 幂集.编写一种方法,返回某集合的所有子集.集合中不包含重复的元素. 说明:解集不能包含重复的子 ...

  6. 字典树/Trie/前缀树-LeetCode总结:720词典中最长的单词;127. 单词接龙;677. 键值映射;面试题 17.17. 多次搜索;648. 单词替换

    MyTrie结构体和相关操作函数 typedef struct MyTrie {bool is_word;vector<MyTrie*> next;MyTrie():is_word(fal ...

  7. 648. 单词替换 : 字典树的经典运用

    题目描述 这是 LeetCode 上的 648. 单词替换 ,难度为 中等. Tag : 「字典树」 在英语中,我们有一个叫做 词根(root) 的概念,可以词根后面添加其他一些词组成另一个较长的单词 ...

  8. 力扣 648. 单词替换

    题目 在英语中,我们有一个叫做 词根(root) 的概念,可以词根后面添加其他一些词组成另一个较长的单词--我们称这个词为 继承词(successor).例如,词根an,跟随着单词 other(其他) ...

  9. 每日一题·648.单词替换·前缀树

    题目 示例 思路 前缀:字符串的前缀是指字符串的任意首部.比如字符串"abbc"的前缀有"a","ab","abb",& ...

最新文章

  1. 泛读:CVPR2014:Discriminative Deep Metric Learning for Face Verification in theWild
  2. python图层合并_图层最新:Python叠加矩形框图层2种方法及效果_爱安网 LoveAn.com
  3. python123作业答案第七周-python一周练习
  4. jQuery 的原型关系图
  5. 图片上传组件_配置Django-TinyMCE组件 实现上传图片功能
  6. python弹窗输入_Python中使用tkinter弹窗获取输入文本
  7. 计算机游戏制作英文要学好吗,有关怎么不沉迷于电脑游戏的英语作文你的同学MICHAEL沉迷于电脑游戏中,影响了学习.作为好朋友,你要怎么帮助他?写一篇80词左右的英语作文....
  8. junit测试mysql_使用Junit单元测试及操作MySQL数据库时出现错误及解决方法
  9. 【电路设计】1N系列二极管型号总结
  10. C/C++百题打卡[5/100]——合唱队形
  11. Linux下设置MTU值到9000
  12. WebApp - 微信浏览器解决安全提示“防盗号或诈骗,请不要输入QQ密码”
  13. 调整VirtualBox虚拟磁盘VDI文件空间大小
  14. 根据标注点坐标范围计算显示缩放级别zoom自适应显示地图
  15. 999瓶水一瓶毒药,10只小鼠,使用python暴力编程
  16. java多线程设计模式详解[推荐]
  17. win7 explorer.exe 服务器运行失败,Win7系统Explorer.exe错误问题的解决方法
  18. 银河麒麟系统安全机制-KYSEC
  19. 活死细胞染色——Cell Meter 细胞活性检测试剂盒
  20. Zbar源码解析——实现中文解码|2021SC@SDUSC

热门文章

  1. Navicat Premium 15的简单使用
  2. WiFi战场,谁主沉浮
  3. Golang性能分析
  4. css专栏 01.css简介 02.css注释及语法结构
  5. 19. python爬虫——基于scrapy框架爬取网易新闻内容
  6. ijkplayer android 内存,IjkPlayer
  7. Linux进阶之综合练习
  8. win2003修改ntp服务器,win2003设置ntp服务器配置
  9. Swift 3 点击屏幕任意位置隐藏键盘
  10. 制药计算机化系统培训,成都《制药行业实验室控制验证及计算机化系统验证实践应用》培训...