字符串-最后一个单词的长度(双指针)
题意:
给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。
如果不存在最后一个单词,请返回 0 。
说明一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。
示例:
输入: “Hello World”
输出: 5
思路:
要找最后一个单词的长度,首先我们定义一个end 指向最后一个元素,定义一个start先不指向。
1,如果end指向的为空,则向前遍历(end–),如果一直为空,直到end < 0,则返回0
2.如果end指向的不为空,则将end 赋给start,(start == end),接下来,start 指向的不为空,则向前遍历(start–),当start指向的为空时,此时,可计算最后一个字符串长度
3.最后,返回end - start
Java代码实现:
class Solution {public int lengthOfLastWord(String s) {int end = s.length() - 1;while(end >= 0 && s.charAt(end) == ' ') end--; //等于空,往前if(end < 0) return 0;int start = end;while(start >= 0 && s.charAt(start) != ' ') start--; //不等于空,往下return end -start;}
}
字符串-最后一个单词的长度(双指针)相关推荐
- 华为机考HJ1字符串最后一个单词的长度
华为机考HJ1字符串最后一个单词的长度C语言解法 统计的是字符串最后一个单词的长度. 而不是单词的内容,所以单词的内容并不重要. 只需要用空格来做标志位即可. getchar():每次只收一个字符. ...
- 华为机试题1:计算字符串最后一个单词的长度,单词以空格隔开。
输出一个整数,表示输入字符串最后一个单词的长度. #include "stdafx.h" #include<iostream> #include<string&g ...
- 华为机试——字符串最后一个单词的长度
题目描述 计算字符串最后一个单词的长度,单词以空格隔开. 输入描述: 一行字符串,非空,长度小于5000. 输出描述: 整数N,最后一个单词的长度. 输入例子: hello world 输出例子: 5 ...
- c语言求最后一个单词的长度,试题2:计算字符串最后一个单词的长度
试题描述:计算字符串最后一个单词的长度,单词之间以空格隔开 涉及的知识点: 1.scanf读取: 1.1.以%d读取时,只识别"十进制整数".对 %d 而言,空格.回车. Tab ...
- 字符串最后一个单词的长度
题目描述 计算字符串最后一个单词的长度,单词以空格隔开. 输入描述 输入一行,代表要计算的字符串,非空,长度小于5000. 输出描述 输出一个整数,表示输入字符串最后一个单词的长度. 示例 输入:he ...
- 华为机试HJ1:字符串最后一个单词的长度
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000. 输入描述: ...
- 牛客网--华为机试在线训练1:字符串最后一个单词的长度
牛客网–华为机试在线训练1:字符串最后一个单词的长度 题目地址: https://www.nowcoder.com/practice/8c949ea5f36f422594b306a2300315da? ...
- gets 函数 - fgets 函数 - scanf 函数 - gets_s 函数 - 字符串最后一个单词的长度
gets 函数 - fgets 函数 - scanf 函数 - gets_s 函数 - 字符串最后一个单词的长度 1. gets 函数 在 C 语言中,while 循环的功能和它在其他语言中一样.它首 ...
- HJ1 字符串最后一个单词的长度
文章目录 1. 题目描述 2. 解题思路 3. 代码实现 1. 题目描述 题目链接:HJ1 字符串最后一个单词的长度 2. 解题思路 先找到字符串中最后一个空格的位置,空格之后的字符个数就是最后一个单 ...
- C++初阶习题(牛客网)【5】求字符串最后一个单词的长度
题目描述: 牛客网题目链接 HJ1 字符串最后一个单词的长度 描述: 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000.(注:字符串末尾不以空格为结尾) 输入描述: 输入一行,代表 ...
最新文章
- 分隔符怎么打出来_男孩地铁上打奶奶,踹爷爷:熊孩子都是怎么培养出来的?...
- android 改python,如何正确的用python修改AndroidManifest.xml(史上最详细教程)
- HttpRequest 类
- 带有下标的赋值维度不匹配是什么意思_三言两语说清TensorFlow是什么?拿来干嘛的?...
- angularjs中按回车事件_浅谈angularjs中响应回车事件
- 根据地理坐标查询地标 城市名称 街道名称 地标建筑
- 【新闻】本人新书《Java多线程编程实战指南(核心篇)》已出版上市
- 南京大学计算机考研复试名单,南大的考研复试名单能查出来吗?
- 苹果6解锁ID锁支持ios13以下所有系统
- linux终端命令行删除当前光标之后内容ctrl +k
- 微信银行突破单一模式功能日渐强大
- java.lang.IllegalArgumentException: Can not set xxxx field XXXX
- mac 中文输入法无法使用
- 一种简单的图形旋转算法
- 3984个小时,阿秀亲眼见证:小白非科班学妹 - offer收割机
- java中IO流的相关知识
- 对于模块化的一些见解
- Scripting Introduction
- 用国外网盘中转站下载openCanvas
- 【网络教程】sublime text3 如何实现自动缩进排版