【leetcode面试经典150题】19.最后一个单词的长度(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C++语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致)

【题目描述】

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

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

【示例一】

复制代码
输入:s = "Hello World"
输出:5
解释:最后一个单词是“World”,长度为5。

【示例二】

复制代码
输入:s = "   fly me   to   the moon  "
输出:4
解释:最后一个单词是“moon”,长度为4。

【示例三】

复制代码
输入:s = "luffy is still joyboy"
输出:6
解释:最后一个单词是长度为6的“joyboy”。

【提示及数据范围】

  • 1 <= s.length <= 10的4次方
  • s 仅有英文字母和空格 ' ' 组成
  • s 中至少存在一个单词

【代码】

cpp 复制代码
// 用C++ 的stringstream方法直接对一行字符串里的字串读入,直到为空

class Solution {
public:
    int lengthOfLastWord(string s) {
        string line;
        stringstream ssin(s);
        int length;
        while(ssin >> line){
            length = line.size();
        }
        return length;
    }
};
相关推荐
怕浪猫1 小时前
多 Agent 系统面试怎么答?我总结了 4 种经典架构
人工智能·算法·面试
程序员清风2 小时前
排序算法:从冒泡排序到归并排序
数据结构·算法·排序算法
万年咸鱼2 小时前
C语言内功心法篇——变量与数据类型
c语言·jvm·算法
rannn_1112 小时前
JVM 垃圾回收面试题全解析:从基础到进阶
java·开发语言·jvm·后端·面试
蒸蒸yyyyzwd2 小时前
后端学习笔记 day58
c++·八股
我命由我123452 小时前
单利计息与复利计息
经验分享·学习·职场和发展·产品运营·求职招聘·职场发展·产品经理
道尔柯南2 小时前
【QT】从零认识 Qt:跨平台 C++ GUI 开发入门
开发语言·c++·qt
Omics Pro2 小时前
反式感知虚拟细胞!超越线性序列
数据库·人工智能·算法·机器学习·自然语言处理
-dzk-2 小时前
【动态规划】LC 152.乘积最大子数组
算法·动态规划
积流成海2 小时前
一致性哈希原理与实现:分布式系统负载均衡
算法·负载均衡·哈希算法·哈希函数·盘子工具站