main
Jason Staten 2 years ago
parent 9bd094a67c
commit 18cd04bab4

@ -0,0 +1,15 @@
package lastword
import "strings"
func LengthOfLastWord(s string) int {
return lengthOfLastWord(s)
}
func lengthOfLastWord(s string) int {
words := strings.Fields(s)
if len(words) == 0 {
return 0
}
return len(words[len(words)-1])
}

@ -0,0 +1,23 @@
package lastword_test
import (
"testing"
"git.jxs.me/leetgo/lastword"
"github.com/stretchr/testify/require"
)
func TestExamples(t *testing.T) {
cases := map[string]int{
"": 0,
"hello": 5,
"hello computer": 8,
" goodbye my friend ": 6,
}
for input, expected := range cases {
t.Run(input, func(t *testing.T) {
result := lastword.LengthOfLastWord(input)
require.Equal(t, expected, result)
})
}
}

@ -0,0 +1,37 @@
58. Length of Last Word
Easy
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 <= 104
s consists of only English letters and spaces ' '.
There will be at least one word in s.
Loading…
Cancel
Save