【题目描述】

给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。

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

说明:一个单词是指由字母组成,但不包含任何空格的字符串。

示例:

输入: "Hello World"
输出: 5

解答

  • 解法一:利用python自带的函数 .rstrip() 可以去除字符串尾部的空格

再从后往前遍历,直至当前遇到空格,也就是s[i] == ' ' 的情况

class Solution:
def lengthOfLastWord(self, s: str) -> int:
s = s.rstrip() #去除尾部空格
if not s: #防止去除字符串后,新的s为空字符串
return 0
n = len(s)
i = -1
leng = 0
while -1*i <= n and s[i] != ' ':
leng += 1
i -= 1
return leng
  执行用时 :28 ms, 在所有 python3 提交中击败了98.98%的用户
  内存消耗 :12.8 MB, 在所有 python3 提交中击败了99.66%的用户
 
 
  • 解法二:rstrip() 函数和 split() 函数结合,三行代码解决
class Solution:
def lengthOfLastWord(self, s: str) -> int:
s = s.strip() #去除尾部空格,防止L[-1]为空字符串
L = s.split(' ') #将s以空格分割
return len(L[-1])
执行用时 :32 ms, 在所有 python3 提交中击败了95.67%的用户
内存消耗 :12.7 MB, 在所有 python3 提交中击败了99.66%的用户
 
 
 
 
 

最新文章

  1. windows 10 设置
  2. arguments.callee的用法
  3. Thread.join简单介绍
  4. 为 Xamarin.Forms 做个跑马灯控件
  5. HDU5672String(尺标法)
  6. Unity3d 枚举某个目录下所有资源
  7. 至强CPU性能排行,从X3210起,由低至高排列。
  8. jQuery Validate 表单验证插件----在class属性中添加校验规则进行简单的校验
  9. Maven安装与更新
  10. Codeforces 510B Fox And Two Dots 【DFS】
  11. 输入框 js正则推断输入
  12. Duilib XML嵌套
  13. Android开源动画库nineoldandroids
  14. Vuejs核心思想学习笔记
  15. fread和fseek的用法
  16. impress.js 一个创建在线幻灯的js库
  17. 洛谷P1710 地铁涨价 图论
  18. js串结构
  19. Mybatis入门配置
  20. Python面试题之Python中应该使用%还是format来格式化字符串?

热门文章

  1. javaweb+上传大文件
  2. js的新生代垃圾回收
  3. Linux的MySQL安装和配置(详细)
  4. 怎么样使用vuex
  5. java之map遍历
  6. 加了https,为什么网站的有些网页是安全的,有些网页不完全安全
  7. python笔记8 socket(TCP) subprocess模块 粘包现象 struct模块 基于UDP的套接字协议
  8. supervisor :a running process with pid = 0,程序PID为0
  9. lua字符串处理(string库用法)
  10. js刷新页面location.reload()用法