leetcode: 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.

For example, 
Given s = "Hello World",

return 5.


#include<iostream>
using namespace std;
class Solution {
public:
	int lengthOfLastWord(const char *s) {
		if (s == NULL)
			return 0;

		int ans = 0, last= 0;
		/* 当遇到字母时,ans++; 遇到空格之后的第一个字符时
		 *(注意:不是遇到空格后就直接置0,这样会出现错误(eg:s="adv fb  ")),ans重新置零(ans = 0)
		 */
		while (*s != '\0')
		{
			if (*s == ' ')
			{
				ans = 0;
			}
			else
			{
				ans++;
			}
			if (ans > 0)
				last = ans;
			s++;
		}
		return last;
	}
};
void main()
{
	Solution solu;
	char *s = "adf  f  kkk   ";
	int ans = solu.lengthOfLastWord(s);
	cout << ans << endl;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值