【力扣】58. 最后一个单词的长度

简介: 【力扣】58. 最后一个单词的长度

题目描述

给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。

单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

示例 1:


输入:s = “Hello World”

输出:5

解释:最后一个单词是“World”,长度为5。


示例 2:


输入:s = " fly me to the moon "

输出:4

解释:最后一个单词是“moon”,长度为4。


示例 3:


输入:s = “luffy is still joyboy”

输出:6

解释:最后一个单词是长度为6的“joyboy”。


提示:


1 <= s.length <= 104

s 仅有英文字母和空格 ' ' 组成

s 中至少存在一个单词

解题方案

字符串遍历,从末尾开始遍历,先过滤掉最后的空格,再对单词长度进行计算。

  • C
int lengthOfLastWord(char * s) {
    int end = strlen(s) - 1, start = 0;
    while(end >= 0 && s[end] == ' ')
    {
        end--;
    }
    if(end < 0)
    {
        return 0;
    }
    start = end;
    while(start >= 0 && s[start] != ' ')
    {
        start--;
    }
    return end - start;
}


相关文章
|
29天前
|
测试技术
leetcode-1592:重新排列单词间的空格
leetcode-1592:重新排列单词间的空格
28 0
|
29天前
|
Go
golang力扣leetcode 79.单词搜索
golang力扣leetcode 79.单词搜索
28 0
|
3天前
|
数据采集 机器学习/深度学习 算法
力扣79题:单词搜索
力扣79题:单词搜索
|
4天前
|
存储 SQL 算法
LeetCode题58: 5种算法实现最后一个单词的长度【python】
LeetCode题58: 5种算法实现最后一个单词的长度【python】
|
4天前
|
存储 算法 数据挖掘
LeetCode 题目 30:串联所有单词的子串【python】
LeetCode 题目 30:串联所有单词的子串【python】
|
8天前
|
算法 Java Go
【经典算法】LeetCode 58.最后一个单词的长度(Java/C/Python3/Go实现含注释说明,Easy)
【经典算法】LeetCode 58.最后一个单词的长度(Java/C/Python3/Go实现含注释说明,Easy)
11 0
|
8天前
|
存储 算法 Java
【经典算法】LeetCode 151. 反转字符串中的单词(Java/C/Python3实现含注释说明,中等)
【经典算法】LeetCode 151. 反转字符串中的单词(Java/C/Python3实现含注释说明,中等)
7 0
|
16天前
|
存储 C语言 容器
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别(下)
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别
23 1
|
16天前
|
存储 C语言 容器
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别(中)
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别
25 1
|
16天前
|
存储 自然语言处理 C语言
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别(上)
从C语言到C++_26(set+map+multiset+multimap)力扣692+349+牛客_单词识别
29 1