LeetCode2114. 句子中的最多单词数(C++)

Posted 敲代码两年半的练习生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode2114. 句子中的最多单词数(C++)相关的知识,希望对你有一定的参考价值。

1 题目描述

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

2 示例描述

2.1 示例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.2 示例2

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

3 解题提示

1 <= sentences.length <= 100
1 <= sentences[i].length <= 100
sentences[i] 只包含小写英文字母和 ’ ’ 。
sentences[i] 的开头和结尾都没有空格。
sentences[i] 中所有单词由单个空格隔开。

4 解题思路

日签,一个简单的计算空格的问题,子串计算空格+1即为单词数量,再进行保留最大的数值即可。

5 代码详解

class Solution 
public:
    int mostWordsFound(vector<string>& sentences) 
        int sumMax = 0 ; 
        int sum = 1 ; 
        for ( int i = 0 ; i < sentences.size() ; i ++ )
        
            for ( int j = 0 ; j < sentences[i].size() ; j ++ )
            
                if ( sentences[i][j] == ' ' )
                
                    sum ++ ;
                
            

            if ( sum > sumMax )
            
                sumMax = sum ;
            
            sum = 1 ;
        

        return sumMax ;
    
;

以上是关于LeetCode2114. 句子中的最多单词数(C++)的主要内容,如果未能解决你的问题,请参考以下文章

算法2114. 句子中的最多单词数(java / c / c++ / python / go / rust)

算法2114. 句子中的最多单词数(java / c / c++ / python / go / rust)

LeetCode 2047 句子中的有效单词数[re 正则表达式] HERODING的LeetCode之路

LeetCode 2047. 句子中的有效单词数

LeetCode 2047. 句子中的有效单词数 / 1996. 游戏中弱角色的数量 / 1765. 地图中的最高点

Leetcode5742. 将句子排序