[路飞]_今夜截断句子

290 阅读1分钟

1816. 截断句子

题目

句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格。每个单词仅由大小写英文字母组成(不含标点符号)。

例如,"Hello World"、"HELLO" 和 "hello world hello world" 都是句子。 给你一个句子 s​​​​​​ 和一个整数 k​​​​​​ ,请你将 s​​ 截断 ​,​​​使截断后的句子仅含 前 k​​​​​​ 个单词。返回 截断 s​​​​​​ 后得到的句子。

解题

题目要求简单,JavaScript实现起来也简单;

调用字符串转换为数组方法split,取前k个单词即可;

代码1

var truncateSentence = function(s, k) {
   return  s.split(' ').slice(0,k).join(' ')
};

当然,调用 API使用方便,但是仔细考虑一下不需要获取全部字符串呀,遍历一下,遇到k个空格,直接返回即可

代码2

var truncateSentence = function(s, k) {
    let result = ''
   for(let i = 0 ; i < s.length ; i++){
       if(s[i] === ' ') k--;
       if(k === 0) return result;
       result+=s[i]  
   }
   return result
};

哈哈,这样我就完成这题了