58. Length of Last Word
Description of the Problem
Given a string s consisting of words and spaces, return the length of the last word in the string.
A word is a maximal substring consisting of non-space characters only.
Example 1:
Input: s = "Hello World"
Output: 5
Explanation: The last word is "World" with length 5.
Example 2:
Input: s = " fly me to the moon "
Output: 4
Explanation: The last word is "moon" with length 4.
Example 3:
Input: s = "luffy is still joyboy"
Output: 6
Explanation: The last word is "joyboy" with length 6.
Constraints:
1 <= s.length <= 10^4sconsists of only English letters and spaces' '. There will be at least one word ins.
Solution
Code (Rust)
impl Solution {
pub fn length_of_last_word(s: String) -> i32 {
let mut count = 0;
for c in s.chars().rev() {
match (c==' ', count == 0) {
(false, _) => count += 1,
(true, false) => return count,
(true, true) => {}
}
}
return count;
}
}
Complexity
- n the length of string
s
Time Complexity:
- \(T(n) = O(n)\)
Auxiliary Space:
- \(T(n) = O(1)\)