截断句子

173 阅读1分钟

Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情

一、题目描述

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

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

image.png

二、思路分析:

  • 这题应该是想看看对于字符串的切割,截取和重新整合吧
  • 做法:首先将字符串按照空格进行数组化,然后根据传入的 k 值将不需要的项删除,最后将保留的单词拼接就是最后的答案了
  • 其他:最后的拼接可以循环遍历数组的每一项进行拼接,也可以用数组的原有的方法进行拼接。这里为了方便一点,就用了数组的方法做了拼接

三、AC 代码:

function truncateSentence(s: string, k: number): string {
    let sArr = s.split(' ').splice(0, k).join(' ');
    return sArr;
};

四、总结:

  • 也可以直接 return s.split(' ').splice(0, k).join(' ');这样就只有一行代码了。
  • 应该还有其他方式去实现,可以去看看大佬们写的题解,我也去看看别人的思路