leetcode58:计算字符串最后一个单词的长度
解题思路
将字符串转化为数组,从数组的最后一位往前数直到遇到第一空格。
class Solution {
public:
int lengthOfLastWord(string s) {
const char* c = s.c_str(); //c_str的返回值是const char* c 因为这里不需要修改c,所以这里直接赋值给const char*, 没有进行拷贝
int i = strlen(c) - 1; //最后一个比数组长度少1
//delete all last blank space //防止最后第一个就是空格,先把尾部的字符串跳过
while( c[i] == ' ' && i>=0 )
{
i--;
}
int count = 0;
while( c[i] != ' ' && i>=0)
{
count++;
i--;
}
return count;
}
};