434. 字符串中的单词数
思路
先去掉左右空格
如果是连续空格也需要处理
代码
/**
* @param {string} s
* @return {number}
*/
var countSegments = function(s) {
s = s.trim();
if (!s) return 0;
let ret = 1;
for(let i = 0; i < s.length; i ++) {
while(s[i] === s[i-1] && s[i] === ' ') i ++;
if (s[i] === ' ') ret ++
}
return ret;
};
复杂度分析
时间复杂度 #card=math&code=O%28N%29)
空间复杂度 #card=math&code=O%281%29)
58. 最后一个单词的长度
思路
先清理掉2端的空格
再从后往前遍历,遇到空格退出
代码
/**
* @param {string} s
* @return {number}
*/
var lengthOfLastWord = function(s) {
s = s.trim();
let ret = 0;
for(let i = s.length - 1; i >= 0; i --) {
if (s[i] === ' ') {
return ret;
}
ret ++
}
return ret;
};
复杂度分析
时间复杂度 #card=math&code=O%28N%29)
空间复杂度 #card=math&code=O%281%29)