string课后练习

前言:

又是十天没有更新我的博客了,今天来整理一道string的题目,最近的强度和做题量都有所下降,真是美妙的寒假呀,来吧让我们看这道题目。

题目:点这里

代码:

cpp 复制代码
class Solution {
public:
    vector<int> findWordsContaining(vector<string>& words, char x) {
        vector<int> ret;
        for(int i=0;i<words.size();i++){
            if(words[i].find(x)!=string::npos){
                cout<<words[i].find(x)<<endl;
                ret.push_back(i);
            }
        }
        return ret;
    }
};

这段代码就是利用for循环和if判断配合find关键字,判断数组中每一个字符串是否包含目标字符,若包含,将索引填充入ret数组中。

这里要讲的是这个语句:

cpp 复制代码
if(words[i].find(x)!=string::npos)

这里就要讲到find关键字的返回值,类型是size_t,是一种无符号整数,永远大于等于0,当find找到目标字符的时候,就会返回对应的下标索引,但如果找不到目标字符呢,就会返回-1,但是这里返回的-1是无符号类型,所以是一个极大正数,所以这里如何判断有没有找到对应字符呢,就要利用这个语句。

相关推荐
C^h3 小时前
c++ string
开发语言·c++
raindayinrain3 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的3 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao3 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
小徐不徐说4 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
大都督会赢的4 小时前
C++第一节课
开发语言·c++
UIU1144 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
论文复现现场5 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
ZhengEnCi5 小时前
用 AI 写代码为什么拼到最后还是拼人:算力瓶颈与领域专家提示词的本质差异
算法·架构
TMedical5 小时前
MedPlanning 截骨模拟矫形功能
c++·图像处理·人工智能·qt·健康医疗