LeetCode 字符串单词个数使用JavaScript解题|前端学算法
有人相爱,有人夜里开车看海,我是leetcode第一题都做不出来
这是LeetCode的第434题字符串中的单词数
字符串单词个数
统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。
请注意,你可以假定字符串里不包括任何不可打印的字符。
示例:
输入: "Hello, my name is John"
输出: 5
解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。
解题思路
每个单词与后面的单词都会有一个空格,所以可以利用这个特点进行分割字符串,把它变成数组,但是也有一些特殊的字符,比如为空,或者多个空字符,这个时候可以遍历数组,进行判断每一项,如果当前项为字符则进行累加
具体步骤如下:
- 第一步:将字符串s根据空格转化为数组,初始化一个变量 res进行接收。
- 第二步:初始化变量num为零,用于保存单词个数。
- 第三步:循环遍历数组res,如果当前元素的长度大于0就说明是一个单词,此时进行num++
- 第四步:返回num
var countSegments = function(s) {
let res = s.split(' ')
let num = 0
for(let i=0;i<res.length;i++){
if(res[i].length>0) num++
}
return num
};
知识点
- 'split()':split()主要是用于对一个字符串进行分割成多个字符串数组。
split() 方法不改变原始字符串。
转载自:https://juejin.cn/post/7151389257452486664