美文网首页
最后一个单词的长度

最后一个单词的长度

作者: bocsoft | 来源:发表于2018-12-28 17:03 被阅读0次

给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。

如果不存在最后一个单词,请返回 0 。

说明:一个单词是指由字母组成,但不包含任何空格的字符串。

示例:

输入: "Hello World"
输出: 5

解决方案:

package length_of_last_word

import "strings"

//利用循环判断
func lengthOfLastWord(s string) int{
    size := len(s)
    if size == 0 {
        return 0
    }
    res  := 0
    for i := size -1; i >= 0; i--{
        if s[i] == ' '{
            if res != 0 {
                return res
            }
            continue
        }
        res++
    }
    return res
}

// 利用GO strings API
func lengthOfLastWord2(s string) int {
    if len(s) <= 0 {
        return 0
    }
    results := strings.Fields(s)
    size := len(results)
    if size <= 0{
        return 0
    }
    return len(results[size-1])
}


package length_of_last_word

import (
    "fmt"
    "github.com/stretchr/testify/assert"
    "testing"
)

type question struct {
    para
    ans
}

// para 是参数
type para struct {
    s string
}

// ans 是答案
type ans struct {
    one int
}

func TestLengthOfLastWord(t *testing.T) {
    ast := assert.New(t)

    qs := []question{

        question{
            para{
                "haha",
            },
            ans{
                4,
            },
        },

        question{
            para{
                "haha ",
            },
            ans{
                4,
            },
        },

        question{
            para{
                "",
            },
            ans{
                0,
            },
        },

        question{
            para{
                "Hello World",
            },
            ans{
                5,
            },
        },

        // 如需多个测试,可以复制上方元素。
    }

    for _, q := range qs {
        a, p := q.ans, q.para
        fmt.Printf("~~%v~~\n", p)

        ast.Equal(a.one, lengthOfLastWord2(p.s), "输入:%v", p)
    }
}


相关文章

  • 编程题自做

    HJ1 字符串最后一个单词的长度 描述 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。 输...

  • 【华为机试】字符串最后一个单词的长度

    题目描述: 计算字符串最后一个单词的长度,单词以空格隔开。 输入描述: 计算字符串最后一个单词的长度,单词以空格隔...

  • 2019-03-20

    获取最后一个单词的长度: 返回3

  • 最后一个单词的长度

    题目 测评地址牛客网计蒜客 给定由大写,小写字母和空格组成的字符串,返回 最后 一个单词的长度。如果输入中不存在单...

  • 最后一个单词的长度

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。...

  • 最后一个单词的长度

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。 如果不存在最后一个单词,请返回 0 ...

  • 最后一个单词的长度

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。...

  • 最后一个单词的长度

    给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。 如果不存在最后一个单词,请返回 0 ...

  • 最后一个单词的长度

    题目 难度级别:简单 给定一个仅包含大小写字母和空格 ' ' 的字符串 s,返回其最后一个单词的长度。如果字符串从...

  • 最后一个单词的长度

网友评论

      本文标题:最后一个单词的长度

      本文链接:https://www.haomeiwen.com/subject/evrelqtx.html