Post

[LeetCode 58] Length of Last Word

LeetCode 58 (Java)
[Length of Last Word] 문제 풀이

[LeetCode 58] Length of Last Word

문제 바로가기


Description


Given a string s consisting of words and spaces, return the length of the last word in the string.

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^4
  • s consists of only English letters and spaces ' '.
  • There will be at least one word in s.







Code


내 제출


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.*;

class Solution {
    public int lengthOfLastWord(String s) {
        StringTokenizer st = new StringTokenizer(s, " ");
        List<String> list = new ArrayList<>();

        while (st.hasMoreTokens()) {
            list.add(st.nextToken());
        }

        //bw.write((list.get(list.size() - 1)).length());
        return (list.get(list.size() - 1)).length();
    }
}


RuntimeMemory
1 ms41.7 MB


다른 풀이


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Solution {
    public int lengthOfLastWord(String s) {
        int i = s.length()-1;
        int length = 0;

        while(i>=0 && s.charAt(i)== ' '){
            i--;
        }
        while(i>=0 && s.charAt(i) != ' '){
            length++;
            i--;
        }
        return length;
    }
}


Reference


This post is licensed under CC BY 4.0 by the author.