题目

给你一个字符串 sentence 作为句子并指定检索词为 searchWord ,其中句子由若干用 单个空格 分隔的单词组成。
请你检查检索词 searchWord 是否为句子 sentence 中任意单词的前缀。
如果 searchWord 是某一个单词的前缀,则返回句子 sentence 中该单词所对应的下标(下标从 1 开始)。
如果 searchWord 是多个单词的前缀,则返回匹配的第一个单词的下标(最小下标)。
如果 searchWord 不是任何单词的前缀,则返回 -1 。
字符串 S 的 前缀 是 S 的任何前导连续子字符串。
示例 1:
输入:sentence = “i love eating burger”, searchWord = “burg”
输出:4
解释:“burg” 是 “burger” 的前缀,而 “burger” 是句子中第 4 个单词。
示例 2:
输入:sentence = “this problem is an easy problem”, searchWord = “pro”
输出:2
解释:“pro” 是 “problem” 的前缀,而 “problem” 是句子中第 2 个也是第 6 个单词,但是应该返回最小下标 2 。
示例 3:
输入:sentence = “i am tired”, searchWord = “you”
输出:-1
解释:“you” 不是句子中任何单词的前缀。
示例 4:
输入:sentence = “i use triple pillow”, searchWord = “pill”
输出:4
示例 5:
输入:sentence = “hello from the other side”, searchWord = “they”
输出:-1
提示:
1 <= sentence.length <= 100
1 <= searchWord.length <= 10
sentence 由小写英文字母和空格组成。
searchWord 由小写英文字母组成。
前缀就是紧密附着于词根的语素,中间不能插入其它成分,并且它的位置是固定的——-位于词根之前。(引用自 前缀_百度百科 )
来源:力扣(LeetCode)

解题思路

  题目大致的步骤:首先需要将句子分割成一个一个的单词,然后每个单词和目标前缀逐一对比,如果发现了符合条件的单词返回下标即可。

class Solution:def isPrefixOfWord(self, sentence: str, searchWord: str) -> int:sentence=sentence.split(' ')def match(a,b):  #对比前缀函数for i,j in zip(a,b):if i!=j:return Falsereturn Truefor i in range(len(sentence)):if len(sentence[i])>=len(searchWord):if match(sentence[i],searchWord):return i+1return -1

LeetCode简单题之检查单词是否为句中其他单词的前缀相关推荐

  1. C练题笔记之:Leetcode-1455. 检查单词是否为句中其他单词的前缀

    题目: 给你一个字符串 sentence 作为句子并指定检索词为 searchWord ,其中句子由若干用 单个空格 分隔的单词组成.请你检查检索词 searchWord 是否为句子 sentence ...

  2. LeetCode 1455. 检查单词是否为句中其他单词的前缀

    1. 题目 给你一个字符串 sentence 作为句子并指定检索词为 searchWord ,其中句子由若干用 单个空格 分隔的单词组成. 请你检查检索词 searchWord 是否为句子 sente ...

  3. LeetCode简单题之检查某单词是否等于两单词之和

    题目 字母的 字母值 取决于字母在字母表中的位置,从 0 开始 计数.即,'a' -> 0.'b' -> 1.'c' -> 2,以此类推. 对某个由小写字母组成的字符串 s 而言,其 ...

  4. LeetCode简单题之检查字符串是否为数组前缀

    题目 给你一个字符串 s 和一个字符串数组 words ,请你判断 s 是否为 words 的 前缀字符串 . 字符串 s 要成为 words 的 前缀字符串 ,需要满足:s 可以由 words 中的 ...

  5. LeetCode简单题之检查句子中的数字是否递增

    题目 句子是由若干 token 组成的一个列表,token 间用 单个 空格分隔,句子没有前导或尾随空格.每个 token 要么是一个由数字 0-9 组成的不含前导零的 正整数 ,要么是一个由小写英文 ...

  6. LeetCode简单题之检查两个字符串数组是否相等

    题目 给你两个字符串数组 word1 和 word2 .如果两个数组表示的字符串相同,返回 true :否则,返回 false . 数组表示的字符串 是由数组中的所有元素 按顺序 连接形成的字符串. ...

  7. LeetCode简单题之检查整数及其两倍数是否存在

    题目 给你一个整数数组 arr,请你检查是否存在两个整数 N 和 M,满足 N 是 M 的两倍(即,N = 2 * M). 更正式地,检查是否存在两个下标 i 和 j 满足: i != j 0 < ...

  8. LeetCode简单题之检查数组是否经排序和轮转得到

    题目 给你一个数组 nums .nums 的源数组中,所有元素与 nums 相同,但按非递减顺序排列. 如果 nums 能够由源数组轮转若干位置(包括 0 个位置)得到,则返回 true :否则,返回 ...

  9. LeetCode简单题之检查是否所有字符出现次数相同

    题目 给你一个字符串 s ,如果 s 是一个 好 字符串,请你返回 true ,否则请返回 false . 如果 s 中出现过的 所有 字符的出现次数 相同 ,那么我们称字符串 s 是 好 字符串. ...

最新文章

  1. 有没有办法折叠Eclipse中的所有代码块?
  2. 第十一周学习总结--助教
  3. case 语句不跳转,死循环
  4. jqueryonclick事件_jquery动态移除/增加onclick属性详解
  5. java打包python到exe文件
  6. 【测试设计】基于正交法的测试用例设计工具--PICT
  7. 智能会议系统(24)---linphone-去掉蓝牙功能
  8. 2021年吉林高考成绩怎么查询,2021年吉林高考成绩查询登录网址入口怎么查 附查询方法...
  9. linux下如何挂载格式化内存卡,Linux下磁盘挂载格式化
  10. 左移和右移的运算规则_一文读懂JavaScript位的与、或、异或、取反及左移右移操作...
  11. AppStore上传已经开发好的App的方法
  12. torch -index_select()、Pytorch 之修改Tensor部分值、pytorch中Tensor的数据类型
  13. [洛谷P5431]【模板】乘法逆元2
  14. 用计算机弹极乐净土谱,原神琴谱极乐净土分享 曲谱怎么弹奏
  15. 如何通过stm32驱动电源检测芯片cs5463
  16. 二进制算法问题解析——1000瓶药水,1瓶有毒药,几只小白鼠能够找出?
  17. 目标跟踪之Pysot系列代码训练(SiamRPN\SiamRPN++)
  18. 计算机如何安装无线网络适配器,无线网卡驱动怎么安装,教您怎么给电脑安装无线网卡驱动...
  19. 海康8800实时视频Android客户端集成总结
  20. 老电脑也要玩tensorflow,解决AVX、SEE、SEE2等报错之路

热门文章

  1. 2022-2028年中国茶几玻璃行业市场研究及前瞻分析报告
  2. Linux shell 学习笔记(16)— shell 入门总结
  3. Go 学习笔记(70)— Go 变量声明、变量初始化、值类型变量赋值、指针类型变量赋值
  4. NumPy — 创建全零、全1、空、arange 数组,array 对象类型,astype 转换数据类型,数组和标量以及数组之间的运算,NumPy 数组共享内存
  5. 用男女朋友关系解释计算机常用概念
  6. 终端(terminal)、tty、shell、控制台(console)、bash之间的区别与联系
  7. GPU指令集技术分析
  8. Compiler编译过程
  9. 推荐系统的个性化排名
  10. 从单一图像中提取文档图像:ICCV2019论文解读