LeetCode简单题之回环句

news/2024/7/2 8:59:41

题目

句子 是由单个空格分隔的一组单词,且不含前导或尾随空格。

例如,“Hello World”、“HELLO”、“hello world hello world” 都是符合要求的句子。
单词 仅 由大写和小写英文字母组成。且大写和小写字母会视作不同字符。

如果句子满足下述全部条件,则认为它是一个 回环句 :

单词的最后一个字符和下一个单词的第一个字符相等。
最后一个单词的最后一个字符和第一个单词的第一个字符相等。
例如,“leetcode exercises sound delightful”、“eetcode”、“leetcode eats soul” 都是回环句。然而,“Leetcode is cool”、“happy Leetcode”、“Leetcode” 和 “I like Leetcode” 都 不 是回环句。

给你一个字符串 sentence ,请你判断它是不是一个回环句。如果是,返回 true ;否则,返回 false 。

示例 1:

输入:sentence = “leetcode exercises sound delightful”
输出:true
解释:句子中的单词是 [“leetcode”, “exercises”, “sound”, “delightful”] 。

  • leetcode 的最后一个字符和 exercises 的第一个字符相等。
  • exercises 的最后一个字符和 sound 的第一个字符相等。
  • sound 的最后一个字符和 delightful 的第一个字符相等。
  • delightful 的最后一个字符和 leetcode 的第一个字符相等。
    这个句子是回环句。
    示例 2:

输入:sentence = “eetcode”
输出:true
解释:句子中的单词是 [“eetcode”] 。

  • eetcode 的最后一个字符和 eetcode 的第一个字符相等。
    这个句子是回环句。
    示例 3:

输入:sentence = “Leetcode is cool”
输出:false
解释:句子中的单词是 [“Leetcode”, “is”, “cool”] 。

  • Leetcode 的最后一个字符和 is 的第一个字符 不 相等。
    这个句子 不 是回环句。

提示:

1 <= sentence.length <= 500
sentence 仅由大小写英文字母和空格组成
sentence 中的单词由单个空格进行分隔
不含任何前导或尾随空格

来源:力扣(LeetCode)

解题思路

  题目的成立定义比较有意思。第一步需要先将整个句子分成一个一个的单词,然后从第0个或者第1个单词开始遍历,遍历整个单词集合,判断当前单词的最后一个字符和下一个单词的第一个字符是否相等或者判断当前单词的第一个字符和上一个单词的最后一个字符是否相等。

class Solution:
    def isCircularSentence(self, sentence: str) -> bool:
        sentence=sentence.split()
        if len(sentence)<2:
            return sentence[0][-1]==sentence[0][0]
        for i in range(1,len(sentence)):
            if sentence[i][0]!=sentence[i-1][-1]:
                return False
        return sentence[0][0]==sentence[-1][-1]

在这里插入图片描述


http://lihuaxi.xjx100.cn/news/326933.html

相关文章

Vue2 开发/学习 笔记

路由监听 新增/修改之后返回到主页面时,重新调一下查询接口watch: {$route(to, from) {if (to.name == InvestStructureAdjust) {this.handleQuery

人工智能与机器学习

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 人工智能与机器学习&#x1f4dd;人工智能相关概念☞什么是人工智能、机器学习、深度学习☞人工智能发…

信号和电源隔离的有效设计技术

介绍 如今&#xff0c;电子产品设计师比以往任何时候都更面临着一系列共同的目标&#xff1a;实现更高的吞吐量、更高的分辨率、更高效的系统和缩短上市时间。在工业自动化、医疗电子或电信系统等领域&#xff0c;通常需要电隔离多个信号&#xff0c;以使子系统能够共享数据或…

第九章 聚类

9.1 聚类任务 在无监督学习中&#xff0c;训练样本的标记信息是未知的&#xff0c;目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律。为进一步的数据分析提供基础。此类学习任务中研究最多、应用最广的是“聚类”。 聚类试图将数据集中的样本划分为若干个通常是不…

【机器学习实战】对加州住房价格数据集进行数据探索(读书笔记)

1. 数据集描述及获取 数据集下载地址&#xff1a;housing.csv数据集的结构&#xff1a; 其中数据集有10个属性&#xff0c;分别为经度、纬度、housing_median_age、房间总数、卧室总数、人口数、家庭数、收入中位数、房价中位数、ocean_proximity。 2. 对数据集进行探索 2.…

优品汇系统开发机制介绍

优品汇系统通过通过消费增值模式&#xff0c;促进商品流通&#xff0c;打造中g最大的供应链。作为对政策的回应&#xff0c;绿点刺激实体经济。前期通过科学合理的业务体系&#xff0c;将大部分利润分配给客户和朋友&#xff0c;从而快速创造人气和粉丝数据。中期将逐步完善产品…

解决 Android 分享到小程序 封面显示不全

参考&#xff1a;解决Android 微信分享小程序图片显示不全_Keung丶的博客-CSDN博客_小程序分享图片显示不全 上面分享的封面还是不满足需求&#xff0c;我们需求是填充满高度或者宽度&#xff0c;在原基础上做修改&#xff1a; 修改后&#xff1a; /*** Bitmap 分享到小程…

Matplotlib入门[04]——处理图像

Matplotlib入门[04]——处理图像 参考&#xff1a; https://ailearning.apachecn.org/Matplotlib官网 图片来源&#xff1a;百度&#xff08;如有侵权&#xff0c;立删&#xff09; 使用Jupyter进行练习 import matplotlib.pyplot as plt import matplotlib.image as mpimg imp…