日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

leetcode 58. Length of Last Word 题解【C++/Java/Python/JS】

發布時間:2025/4/5 c/c++ 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 leetcode 58. Length of Last Word 题解【C++/Java/Python/JS】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

58. 最后一個單詞的長度 58. Length of Last Word

題目:

給定一個僅包含大小寫字母和空格' ' 的字符串,返回其最后一個單詞的長度。

如果不存在最后一個單詞,請返回0 。

說明:一個單詞是指由字母組成,但不包含任何空格的字符串。

示例:

輸入: "Hello World" 輸出: 5

題解:

主要思路是從右向左遍歷。先找到第一個非空格字符,作為最后一個單詞的結束字符,開始計數cnt,繼續往左遍歷,找到第一個空格,即單詞的開始位置,計數結束,返回cnt。

技巧:

從右往左遍歷。

C++
class Solution { public:int lengthOfLastWord(string s) {int n = s.length();int i = n - 1;while(i >= 0 && s[i] == ' ') { // 尋找第一個非空格字符i--;}if(i < 0) {return 0;}int cnt = 0;while(i >= 0 && s[i] != ' ') {// 統計非空格字符的長度,即為最后一個單詞的長度cnt++;i--;}return cnt;} }; 復制代碼
Java
class Solution {public int lengthOfLastWord(String s) {int n = s.length();int i = n - 1;while(i >= 0 && s.charAt(i) == ' ') {// 從右往左尋找第一個非空格字符i--;}if(i < 0) {return 0;}int cnt = 0;while(i >= 0 && s.charAt(i) != ' ') {// 統計非空格字符即為最后一個單詞的長度cnt++;i--;}return cnt;} } 復制代碼
Python
class Solution(object):def lengthOfLastWord(self, s):""":type s: str:rtype: int"""n = len(s)i = n - 1while i >= 0 and s[i] == ' ': # 從右往左找第一個非空格字符i -= 1if i < 0:return 0cnt = 0while i >= 0 and s[i] != ' ': # 統計連續非空格字符的數量,即為最后一個單詞的長度。i -= 1cnt += 1return cnt 復制代碼
JavaScript
/*** @param {string} s* @return {number}*/ var lengthOfLastWord = function(s) {var n = s.length;var i = n - 1;while (i >= 0 && s[i] == ' ') {//從右往左找第一個非空格字符,即最后一個單詞的結束字符i -= 1;}var cnt = 0;while(i >= 0 && s[i] != ' ') {//從右往左找第一個空格符號,即最后一個單詞的開始位置i -= 1;cnt += 1;}return cnt; }; 復制代碼

總結

以上是生活随笔為你收集整理的leetcode 58. Length of Last Word 题解【C++/Java/Python/JS】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。