LeetCode簡單題19 最後乙個單詞的長度

2021-10-05 20:40:41 字數 767 閱讀 2888

題目描述

給定乙個僅包含大小寫字母和空格』 '的字串s,返回其最後乙個單詞的長度。如果字串從左向右滾動顯示,那麼最後乙個單詞就是最後出現的單詞。

如果不存在最後乙個單詞,則返回0.

說明:乙個單詞是指僅由字母組成、不包含任何空格字串的最大子字串。

樣例

輸入:「hello world」

輸出:5

輸入:"hello world "

輸出:5

題解

看到題首先想到的就是從後向前遍歷,這個時候會遇到兩種情況:字串就是以乙個單詞結尾的、字串是以空格結尾。

所以開始遍歷時要先把結尾的空格過濾掉。

之後開始遍歷最後乙個單詞,結束的標誌也有兩種情況:遇到空格就表明乙個單詞結束、一直遍歷到字串首位也沒有發現空字串。

利用雙指標,兩個指標最終的差值就是該字串的長度。

**:

public static int lengthoflastword(string s) 

if(end < 0)

return 0;

int start = end;

while(start >= 0 && s.charat(start) != ' ')

return end - start;

}

注意第二個while裡的兩個條件,順序不能調換。

LeetCode刷題系列19

給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.說明 給定的 n 保證是有效的。高階 你能嘗試使用一趟掃瞄實現嗎?1 方法一 兩次遍歷演算法 思路我們注意到這個問題可以容易地簡化...

leetcode刷題筆記19

面試題28.對稱的二叉樹 請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和它的映象一樣,那麼它是對稱的。definition for a binary tree node.class treenode def init self,x self.val x self.left none...

LeetCode題庫 簡單題

leetcode 題目鏈結 反轉一半 負數不可能是回文 個位數一定是回文 0是回文 問題 如何反轉一半的數字 演算法例項 bool ispalindrome int x if x 10 x為個位數 一定是回文 return1 int revernum 0 while x revernum retur...