首页 > 其他 > 详细

LeetCode[string]: Length of Last Word

时间:2014-11-06 14:57:15      阅读:271      评论:0      收藏:0      [点我收藏+]

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.

解法一

分三步:

  1. 统计字符串的有效长度;
  2. 滤掉最后的空格;
  3. 统计最后一个单词的长度。

代码如下:

C++ code
int lengthOfLastWord(const char *s) { int i, j, len = 0; for (i = 0; s[i] != ‘\0‘; ++i) ; for ( --i; s[i] == ‘ ‘; --i) ; for (j = i; j >= 0 && s[j] != ‘ ‘; --j, ++len) ; return len; }

解法二

一趟找到最后那个单词的长度。

C++ code
int lengthOfLastWord(const char *s) { int len = 0, last = 0; while (*s) if (*s++ == ‘ ‘) { last = len > 0 ? len : last; len = 0; } else ++len; return len > 0 ? len : last; }

LeetCode[string]: Length of Last Word

原文:http://blog.csdn.net/chfe007/article/details/40859251

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!