58. Length of Last Word

Given a stringsconsists of upper/lower-case alphabets and empty space characters' ', return the length of last word in the string.

If the last word does not exist, return 0.

Note: A word is defined as a character sequence consists of non-space characters only.

For example,
Given s="Hello World",
return5.

Thought

Assume that the _ is space. i represents the position of the last character in sequence. Keep moving i to LEFT until meet the alphabets (last word), then start counting.

          v ← i
Hello_World____

Solution

public class Solution {
    public int lengthOfLastWord(String s) {
        int res = 0, i = s.length() - 1;
        while (i >= 0 && s.charAt(i) == ' ') i--;
        while (i >= 0 && s.charAt(i) != ' ') {
            i--;
            res++;
        }
        return res;
    }
}

results matching ""

    No results matching ""