解题思路
看到这个就知道很简单了,只不过很多人就仅判断当遇到空格直接清0重新计算,然而这样当字符串最后有空格的时候那就没办法输出正确的答案了,所以我们需要一个 lst_cnt
来记录对上一次的长度,结尾的时候判断一下 cnt
是否为 0,如果不为 0 直接将 lst_cnt
等于 cnt
然后返回 lst_cnt
就好了。然而这样做的话还是没办法通过,如果结尾连续有多过一个空格呢?所以我们在遇到空格的时候也要判断一下 cnt
是否为 0,如果为 0 的话就不要更新 lst_cnt
。
代码
class Solution {
public:
int lengthOfLastWord(string s) {
int cnt = 0, lst_cnt = 0;
for(int i = 0; i < s.size(); i++) {
if(s[i] == ' ') {
if(cnt != 0) {
lst_cnt = cnt;
cnt = 0;
}
continue;
}
cnt++;
}
if(cnt != 0) lst_cnt = cnt;
return lst_cnt;
}
};
版权属于:江筱雨
本文链接:https://www.yuisblog.com/archives/76/
本站未注明转载的文章均为原创,并采用
CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!