力扣第 282 场周赛 :统计包含给定前缀的字符串

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

13.png

一、问题描述


给你一个字符串数组 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"作为前缀的字符串。


考察

字符串的应用
建议用时10~25min


三、问题分析


这一题比较简单,我们可以利用C++ String类里面的查找方法解决这一题。

函数 用法
查找(查找成功返回元素位置,失败返回-1)
s.find('A') 查找字符A
s.find("ABC") 查找字符串ABC
s.find('A',2) 从位置2开始查找字符A
s.find("ABCD",1,2) 从位置1开始,查找ABCD的前两个字符
s.rfind() 从字符串尾部开始查找
如果满足words[i].find(pref)==0,那么不就代表字符串pref是words[i]的前缀吗?


四、编码实现


classSolution {
public:
intprefixCount(vector<string>&words, stringpref) {
inti,ans=0,n=words.size();//初始化for(i=0;i<n;i++)//循环判断        {
if(words[i].find(pref)==0)//判断是否为前缀            {
ans++;//计数器++            }
        }
returnans;//输出结果    }
};

五、测试结果34.png

相关文章
|
5月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
|
4月前
|
算法
Leetcode第十四题(最长公共前缀)
这篇文章介绍了一种算法,用于在给定的字符串数组中找到最长公共前缀,通过逐字符比较每个字符串的对应位置,一旦发现不匹配立即返回当前已匹配的子串作为公共前缀。
40 0
|
4月前
|
JavaScript
力扣3333.找到初始输入字符串Ⅱ
【10月更文挑战第9天】力扣3333.找到初始输入字符串Ⅱ
50 1
|
4月前
|
C++
Leetcode第43题(字符串相乘)
本篇介绍了一种用C++实现的字符串表示的非负整数相乘的方法,通过逆向编号字符串,将乘法运算转化为二维数组的累加过程,最后处理进位并转换为字符串结果,解决了两个大数相乘的问题。
38 9
|
4月前
|
算法 C++
Leetcode第八题(字符串转换整数(atoi))
这篇文章介绍了LeetCode上第8题“字符串转换整数(atoi)”的解题思路和C++的实现方法,包括处理前导空格、正负号、连续数字字符以及整数溢出的情况。
36 0
|
4月前
【LeetCode 22】459.重复的子字符串
【LeetCode 22】459.重复的子字符串
47 0
|
4月前
【LeetCode 20】151.反转字符串里的单词
【LeetCode 20】151.反转字符串里的单词
34 0
|
4月前
【LeetCode 19】541.反转字符串II
【LeetCode 19】541.反转字符串II
31 0
|
4月前
【LeetCode 18】6.2.反转字符串
【LeetCode 18】6.2.反转字符串
29 0
|
6月前
|
存储 算法
LeetCode第43题字符串相乘
LeetCode第43题"字符串相乘"的解题方法,通过使用数组存储乘积并处理进位,避免了字符串转换数字的复杂性,提高了算法效率。
LeetCode第43题字符串相乘