2114. 句子中的最多单词数

简介: 一个 句子 由一些 单词 以及它们之间的单个空格组成,句子的开头和结尾不会有多余空格。给你一个字符串数组 sentences ,其中 sentences[i] 表示单个 句子 。请你返回单个句子里 单词的最多数目 。

一个 句子 由一些 单词 以及它们之间的单个空格组成,句子的开头和结尾不会有多余空格。

给你一个字符串数组 sentences ,其中 sentences[i] 表示单个 句子 。

请你返回单个句子里 单词的最多数目 。

示例 1:

输入:sentences = ["alice and bob love leetcode", "i think so too", "this is great thanks very much"]
输出:6
解释:

  • 第一个句子 "alice and bob love leetcode" 总共有 5 个单词。
  • 第二个句子 "i think so too" 总共有 4 个单词。
  • 第三个句子 "this is great thanks very much" 总共有 6 个单词。
    所以,单个句子中有最多单词数的是第三个句子,总共有 6 个单词。
    示例 2:

输入:sentences = ["please wait", "continue to fight", "continue to win"]
输出:3
解释:可能有多个句子有相同单词数。
这个例子中,第二个句子和第三个句子(加粗斜体)有相同数目的单词数。

提示:

1 <= sentences.length <= 100
1 <= sentences[i].length <= 100
sentences[i] 只包含小写英文字母和 ' ' 。
sentences[i] 的开头和结尾都没有空格。
sentences[i] 中所有单词由单个空格隔开。
通过次数18,685提交次数21,970

来源:力扣(LeetCode)

一:
暴力求解:

直接算sentences中每个句子出现空格的数量,空格的数量进行加一操作,就是该句子的单词数量。

利用max函数。将每次计算出来的数量,与前一个最大的数量作比较。

这里假设一开始最大数量为0.每回都将做大的数存放在res中,res在与下一个句子计算出来的数量进行比较。

如果res,比下一个句子的单词数大,则res保持不变、

代码:

 class Solution {
   public:
int mostWordsFound(vector<string>& sentences) {
      int res=0;
    for(int i=0;i<sentences.size();i++)
    {
         int count=0;
        for(int j=0;j<sentences[i].size();j++)
        {
            if(sentences[i][j]==' ')
            count++;
        }

        res=max(res,count);
    }

    return res+1;
}
 };

二:
利用count函数:
那么我们可以遍历句子数组,
通过统计每个句子的空格数量来计算它的单词数量,
同时维护这些句子单词数量的最大值。
当遍历完成后,我们返回该最大值作为答案。
class Solution {
public:
int mostWordsFound(vector& sentences) {
int res = 0;
for (const string& sentence: sentences) {
// 单词数 = 空格数 + 1
int cnt = count(sentence.begin(), sentence.end(), ' ') + 1;
res = max(res, cnt);
}
return res;
}
};

目录
相关文章
|
5月前
|
Python
每日一题 2047. 句子中的有效单词数
每日一题 2047. 句子中的有效单词数
|
6月前
leetcode-2047:句子中的有效单词数
leetcode-2047:句子中的有效单词数
37 0
7-4 统计一行文本的单词个数
7-4 统计一行文本的单词个数
105 0
LeetCode 1832. 判断句子是否为全字母句
全字母句 指包含英语字母表中每个字母至少一次的句子。
104 0
|
测试技术
寻找出现次数最多的字母(单词分析)
寻找出现次数最多的字母(单词分析)
|
算法 前端开发
句子中的最多单词数
🎈每天进行一道算法题目练习,今天的题目是“句子中的最多单词数”,一道简单题。
232 0