博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Leetcode | Length of Last Word
阅读量:5939 次
发布时间:2019-06-19

本文共 927 字,大约阅读时间需要 3 分钟。

Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.

If the last word does not exist, return 0.

Note: A word is defined as a character sequence consists of non-space characters only.

For example,

Given s = "Hello World",
return 5.

这题是要求最后一个单词的长度。而且因为输入是一个char *,而不是已经长度的数组,所以从左往右扫。碰到空格就保留它的位置。碰到非空格就计算长度。如果前面没有空格,就直接和字符串开头相比较。如果有空格就和最近的空格比较。

这种方法就可以忽略末尾是不是有空格,或者连续空格等情况了。

1 class Solution { 2 public: 3     int lengthOfLastWord(const char *s) { 4         const char *p = s, *space = NULL; 5         int l = 0; 6         for (; *p != '\0'; p++) { 7             if (*p == ' ') { 8                 space = p; 9             } else if (space == NULL) {10                 l = p - s + 1;11             } else {12                 l = p - space;13             }14         }15         return l;16     }17 };

 

转载于:https://www.cnblogs.com/linyx/p/3734569.html

你可能感兴趣的文章
Redis常用命令【字符串】
查看>>
ABP官方文档翻译 10.1 ABP Nuget包
查看>>
CentOS7 防火墙
查看>>
DataTable
查看>>
POJ 2226 Muddy Fields 二分图(难点在于建图)
查看>>
STM32软件仿真的一个注意点
查看>>
[LeetCode]题解(python):119-Pascal's Triangle II
查看>>
[LeetCode]题解(python):121-Best Time to Buy and Sell Stock
查看>>
Selenium-ActionChainsApi--鼠标连贯操作
查看>>
android基于MBR的bootkit病毒学习笔记
查看>>
Flask学习
查看>>
VC++文件操作大全
查看>>
队列的顺序存储---顺序队列
查看>>
NOIP
查看>>
MicroPython-GPS教程之TPYBoardv702控制5110显示当前经纬度
查看>>
ListView简单使用
查看>>
用HTML/JS/PHP方式实现页面延时跳转
查看>>
【Redis】安装PHP的redis驱动(二)
查看>>
java中string和int互相转化
查看>>
什么是序列化,为什么要序列化
查看>>