LeetCode 第 58 题(Length of Last Word)
2016-05-14 12:45
344 查看
LeetCode 第 58 题(Length of Last Word)
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.
example,
Given s = “Hello World”,
return 5.
这道题也比较简答,主要考察字符串的一些基本操作。需要注意的是要把字符串后面多余的空格先排除掉。因此我的代码用了两个循环。
class Solution { public: int lengthOfLastWord(string s) { string::const_iterator tail = s.cend(); int len = 0; while(tail != s.cbegin())// 去掉字符串后面多余的空格 { --tail; if(*tail != ' ') { len ++; break; } } // 到这里时 tail 指向的位置有两种情况: // 1. 指向字符串中最后一个非空格的字符 // 2. 指向字符串的第一个字符 // 当然,这两种情况可能会同时满足,但无论如何,这时 tail 指向的字符已经处理过了。因此之后只需处理 tail 之前的那些元素。 while(tail != s.cbegin()) { --tail; if(*tail == ' ') break; len++; } return len; } };
相关文章推荐
- CSS动画 防止动画结束后,回归原位
- Python:递归和装饰器
- Oxford building dataset数据集计算正确相关图像ground truth的C++代码
- Codeforces Round #321 (Div. 2)-B. Kefa and Company,区间最大值!
- windows下安装配置Thrift
- 教你学会Android的NDK开发
- 重定位表的添加/编辑/删除工具
- Spark集群配置
- 玩转ptrace(二)
- hbase-0.98.19在centos下面编译
- JavaScript常用内置对象及其相应属性和方法(一)
- label的文字描边
- Hibernate 4.3 注解映射
- Hive SQL的编译过程
- uva10652 Board Wrapping(凸包)
- 美国匿名议员:操控一个幼稚绵羊组成的国家太容易了
- [从头学声学] 第215节 音符的研究
- hdu 2087 剪花布条(KMP)
- What happened if i delete a pointer which was not allocated dynamically?
- 获取字符串的utf-16编码