列表

详情


2185. 统计包含给定前缀的字符串

给你一个字符串数组 words 和一个字符串 pref

返回 words 中以 pref 作为 前缀 的字符串的数目。

字符串 s前缀 就是  s 的任一前导连续字符串。

 

示例 1:

输入:words = ["pay","attention","practice","attend"], pref = "at"
输出:2
解释:以 "at" 作为前缀的字符串有两个,分别是:"attention" 和 "attend" 。

示例 2:

输入:words = ["leetcode","win","loops","success"], pref = "code"
输出:0
解释:不存在以 "code" 作为前缀的字符串。

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: int prefixCount(vector<string>& words, string pref) { } };

javascript 解法, 执行用时: 60 ms, 内存消耗: 41.8 MB, 提交时间: 2023-01-08 08:43:18

/**
 * @param {string[]} words
 * @param {string} pref
 * @return {number}
 */
var prefixCount = function(words, pref) {
    let res = 0;
    for (const word of words) {
        if (word.startsWith(pref)) {
            res++;
        }
    }
    return res;
};

golang 解法, 执行用时: 4 ms, 内存消耗: 3.4 MB, 提交时间: 2023-01-08 08:42:21

func prefixCount(words []string, pref string) (ans int) {
	for _, word := range words {
		if strings.HasPrefix(word, pref) {
			ans++
		}
	}
	return
}

python3 解法, 执行用时: 40 ms, 内存消耗: 15.2 MB, 提交时间: 2023-01-08 08:38:52

class Solution:
    def prefixCount(self, words: List[str], pref: str) -> int:
        return sum(w.startswith(pref) for w in words)

python3 解法, 执行用时: 32 ms, 内存消耗: 15 MB, 提交时间: 2022-05-30 11:02:29

class Solution:
    def prefixCount(self, words: List[str], pref: str) -> int:
        return len([k for k in words if k.startswith(pref)])

上一题