1.编辑器

我使用的是win10+vscode+leetcode+python3
环境配置参见我的博客:
链接

2.第五十八题

(1)题目
英文:
Given a string s consists of upper/lower-case alphabets and empty space characters ’ ', return the length of last word (last word means the last appearing word if we loop from left to right) in the string.

If the last word does not exist, return 0.

Note: A word is defined as a maximal substring consisting of non-space characters only.

中文:
给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。

如果不存在最后一个单词,请返回 0 。

说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/length-of-last-word

(2)解法
① (耗时:44ms,内存:13.6M)

class Solution:def lengthOfLastWord(self, s: str) -> int:split_s = s.split()if split_s:return len(split_s[-1])else:return 0

注意:
1.s.split(’’)会提示空的分割符,应该用’ '或者不用任何字符来表示空格 。

② 分情况讨论(耗时:36ms,内存:13.7M)

class Solution:def lengthOfLastWord(self, s: str) -> int:count = 0flag = 0for indx in range(len(s)-1, -1, -1):if s[indx]==' ' and flag==1  :return countif s[indx]!=' ':count+=1flag=1if count==len(s):return countif indx==0 and s[0]!=' ':return countreturn 0

注意:
1.range(len(s)-1, -1, -1)是[len(s)-1, …, 0]。
2.分几种情况:
从右往左看
① s中全是空格,则直接输出0
② 若第一个为空格,第二个后全为字母,则一直count+=1,直到indx到了最前面的0,return总的计数值
③ 如果s全是字母,则当count==len(s):时,return总的计数值
④ 如果第一个开始为字母,直到碰到空格,计数其间的字母个数
3.当出现第一个字母时,flag从0变为了1,所以下面只要出现空格,就可以return了

当然了,解法②还有更简单的写法:(耗时:44ms,内存:13.6M)

class Solution:def lengthOfLastWord(self, s: str) -> int:count = 0for indx in range(len(s) - 1, -1, -1):if s[indx] != " ":while indx >= 0 and s[indx] != " ":count += 1indx -= 1breakreturn count

leetcode python3 简单题58. Length of Last Word相关推荐

  1. leetcode python3 简单题234. Palindrome Linked List

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第二百三十四题 (1)题目 英文: Given a singly linked li ...

  2. leetcode python3 简单题232. Implement Queue using Stacks

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第二百三十二题 (1)题目 英文: Implement the following ...

  3. leetcode python3 简单题225. Implement Stack using Queues

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第二百二十五题 (1)题目 英文: Implement the following ...

  4. leetcode python3 简单题70. Climbing Stairs

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第七十题 (1)题目 英文: You are climbing a stair ca ...

  5. leetcode python3 简单题69. Sqrt(x)

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第六十九题 (1)题目 英文: Implement int sqrt(int x). ...

  6. leetcode python3 简单题53. Maximum Subarray

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第五十三题 (1)题目 英文: Given an integer array num ...

  7. leetcode python3 简单题27. Remove Element

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第二十七题 (1)题目 英文: Given an array nums and a ...

  8. leetcode python3 简单题26. Remove Duplicates from Sorted Array

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第二十六题 (1)题目 英文: Given a sorted array nums, ...

  9. leetcode python3 简单题14. Longest Common Prefix

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第十四题 (1)题目 英文: Write a function to find th ...

最新文章

  1. Redis-Cluster实战--4.官方安装(含视频)
  2. Spring5源码 - 04 invokeBeanFactoryPostProcessors 源码解读_1
  3. JVM:方法区可以GC吗?
  4. caxa明细表导入零件材质_各种橡胶材质橡胶制品
  5. wxWidgets:wxSingleInstanceChecker类用法
  6. spark基础之基于yarn两种提交模式分析
  7. CSS 分组 和 嵌套 选择器
  8. 在Jenkins平台上运行Jmeter
  9. 2022-2028全球与中国质量管理体系软件市场现状及未来发展趋势
  10. 软件测试简历常见问题
  11. 微信数据清空了怎么办?误删微信聊天记录怎么恢复
  12. 移动通信网络协议 — GTP-U 隧道协议
  13. MAVEN打包时没有将src/main/cache文件夹打到到WAR包中
  14. android 最火框架,一个牛逼哄哄的Android框架One,秒杀最火的Xutils
  15. Iphone6/6s刷机常见问题
  16. 台式计算机没有声音怎么办,台式电脑没有声音了怎么恢复(在家用这两个方法轻松解决)...
  17. STAF/STAX 安装配置
  18. 欧几里得算法的实现(Java)
  19. 《Java小子怒闯数据结构九重天》第三重天——栈
  20. 《史蒂芬·乔布斯传》摘录

热门文章

  1. python 乒乓球_python游戏练手--乒乓球
  2. php declaration of,PHP 7.2中的新功能(参数类型声明)
  3. 青蛙的约会 数论 拓展欧几里德
  4. NumPy中如何确定两个ndarray数组完全相同
  5. Rstudio更换默认下载镜像(下载源)教程
  6. Python中Permission denied怎么解决
  7. [转]跨语言通信方案比较
  8. tkinter事件机制
  9. stm32F4的ADC+DMA+Timer,实现2MHz连续采样。1LSB分辨率,极低噪声。
  10. 深度学习之常用优化方法篇