91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決leetcode中最后一個單詞的長度問題

發布時間:2022-01-17 13:35:35 來源:億速云 閱讀:124 作者:小新 欄目:大數據

小編給大家分享一下如何解決leetcode中最后一個單詞的長度問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

 

題目鏈接

https://leetcode-cn.com/problems/length-of-last-word/

 

題目描述

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

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

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

示例:

輸入: "Hello World"
輸出: 5
   

解題方案

 

思路

  • 標簽:字符串遍歷

  • 從字符串末尾開始向前遍歷,其中主要有兩種情況

  • 第一種情況,以字符串"Hello World"為例,從后向前遍歷直到遍歷到頭或者遇到空格為止,即為最后一個單詞"World"的長度5

  • 第二種情況,以字符串"Hello World "為例,需要先將末尾的空格過濾掉,再進行第一種情況的操作,即認為最后一個單詞為"World",長度為5

  • 所以完整過程為先從后過濾掉空格找到單詞尾部,再從尾部向前遍歷,找到單詞頭部,最后兩者相減,即為單詞的長度

  • 時間復雜度:O(n),n為結尾空格和結尾單詞總體長度

 

代碼

  • Java版本

class Solution {
   public int lengthOfLastWord(String s) {
       int end = s.length() - 1;
       while(end >= 0 && s.charAt(end) == ' ') end--;
       if(end < 0) return 0;
       int start = end;
       while(start >= 0 && s.charAt(start) != ' ') start--;
       return end - start;
   }
}
 
  • JavaScript版本

/**
* @param {string} s
* @return {number}
*/
var lengthOfLastWord = function(s) {
   let end = s.length - 1;
   while(end >= 0 && s[end] == ' ') end--;
   if(end < 0) return 0;
   let start = end;
   while(start >= 0 && s[start] != ' ') start--;
   return end - start;
};
   

畫解

如何解決leetcode中最后一個單詞的長度問題

如何解決leetcode中最后一個單詞的長度問題

如何解決leetcode中最后一個單詞的長度問題

如何解決leetcode中最后一個單詞的長度問題

如何解決leetcode中最后一個單詞的長度問題

如何解決leetcode中最后一個單詞的長度問題

以上是“如何解決leetcode中最后一個單詞的長度問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

龙里县| 巴彦县| 东乡族自治县| 高雄市| 利津县| 庆阳市| 全南县| 中山市| 静宁县| 阿合奇县| 南投县| 彝良县| 津市市| 宣威市| 营山县| 田林县| 宁德市| 普洱| 抚州市| 安西县| 商都县| 荣昌县| 社会| 邹城市| 长子县| 凤山县| 武邑县| 贺州市| 雷山县| 财经| 利津县| 定安县| 敦煌市| 彭阳县| 天镇县| 杨浦区| 莲花县| 公主岭市| 铁力市| 哈尔滨市| 淄博市|