Given a string s consists 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 =
return
Given s =
"Hello World",return
5.
Solution:
One pointer points to the end of string, then loop from right to left.
Run time complexity is O(n), constant space.public class Solution {
public int lengthOfLastWord(String s) {
if(s == null || s.length() == 0)
return 0;
s = s.trim(); //get rid of space at beginning and end
int count = 0;
for(int i = s.length() - 1; i >= 0; i--) {
if(s.charAt(i) != ' ') {
count++;
}else {
return count;
}
}
return count;
}
}
No comments:
Post a Comment