2114. 句子中的最多单词数
一个 句子 由一些 单词 以及它们之间的单个空格组成,句子的开头和结尾不会有多余空格。
给你一个字符串数组 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]
中所有单词由单个空格隔开。原站题解
javascript 解法, 执行用时: 76 ms, 内存消耗: 43 MB, 提交时间: 2023-09-12 16:30:58
/** * @param {string[]} sentences * @return {number} */ var mostWordsFound = function(sentences) { let res = 0; for (const s of sentences) { let cur = s.split(" "); res = Math.max(res, cur.length); } return res; };
rust 解法, 执行用时: 0 ms, 内存消耗: 2.1 MB, 提交时间: 2023-09-12 16:30:18
impl Solution { pub fn most_words_found(sentences: Vec<String>) -> i32 { sentences .iter() .map(|x| x.split(' ').count() as i32) .max() .unwrap() } }
golang 解法, 执行用时: 0 ms, 内存消耗: 3.5 MB, 提交时间: 2023-09-12 16:29:49
func mostWordsFound(sentences []string) (ans int) { for _, s := range sentences { cnt := strings.Count(s, " ") + 1 if cnt > ans { ans = cnt } } return }
java 解法, 执行用时: 6 ms, 内存消耗: 40.7 MB, 提交时间: 2023-09-12 16:29:18
class Solution { public int mostWordsFound(String[] sentences) { return Arrays.stream(sentences).map(s -> s.split(" ").length).max(Integer::compareTo).orElse(0); } }
java 解法, 执行用时: 4 ms, 内存消耗: 41.7 MB, 提交时间: 2023-09-12 16:29:00
class Solution { public int mostWordsFound(String[] sentences) { int res = 0; for (String s : sentences) { res = Math.max(res, s.split(" ").length); } return res; } }
cpp 解法, 执行用时: 12 ms, 内存消耗: 9.5 MB, 提交时间: 2023-09-12 16:28:34
class Solution { public: int mostWordsFound(vector<string>& sentences) { int res = 0; for (const string& sentence: sentences) { // 单词数 = 空格数 + 1 int cnt = count(sentence.begin(), sentence.end(), ' ') + 1; res = max(res, cnt); } return res; } };
php 解法, 执行用时: 16 ms, 内存消耗: 19 MB, 提交时间: 2023-09-12 16:28:07
class Solution { /** * @param String[] $sentences * @return Integer */ function mostWordsFound($sentences) { return max(array_map(function($s) { return count(explode(' ', $s)); }, $sentences)); } }
python3 解法, 执行用时: 40 ms, 内存消耗: 15.1 MB, 提交时间: 2022-05-28 23:04:43
class Solution: def mostWordsFound(self, sentences: List[str]) -> int: return max([len(s.split(' ')) for s in sentences])