判断vector、string是否存在某个元素

1、string字符串中是否存在某个字符(char)

string中find()返回值是字母在母串中的位置(下标索引),如果没有找到,那么会返回一个特别的标记npos。(返回值可以看成是一个int型的数)

string sentence = "I am a bad girl";
char s = 'c';
if(string::npos == sentence.find(s)) cout << "不存在" << endl;

2、vector中是否存在某个元素

2.1 std::count()

最简单的方式是对vector中的指定元素进行计数,如果count不为零,表示该元素存在,那么std::count可以很容易实现。

vector<string> words = {"wk","xf","ot","je"};
string word = "wk";
if(count(words.begin(), words.end(), word)) cout << "Found" << endl;
else cout << "Not Found" << endl;

2.2 std::find()

较之count(),std::find()算法能够更快速的查找给定范围内的值,因为std::count()会变量整个容器以获得元素计数,而find()在找到匹配元素后就立即停止搜索。

vector<string> words = {"wk","xf","ot","je"};
string word = "wk";
if(find(words.begin(), words.end(), word)!=words.end()) cout << "Found" << endl;
else cout << "Not Found" << endl;

2.3 std::binary_search()

如果vector是有序的,那么可以考虑使用这种算法,如果在给定范围内找到元素,则返回true,否则返回false。该方式是采用二分法查找,时间复杂度为O(log(n)),速度比较快。

vector<string> words = {"wk","xf","ot","je"};
string word = "wk";
if(binary_search(words.begin(), words.end(), word)) cout << "Found" << endl;
else cout << "Not Found" << endl;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/608186.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件测试概念及分类整理汇总

前言 测试小伙伴在谈论软件测试分类&#xff0c;五花八门的分类&#xff0c;眼花缭乱。因为将各个维度划分的内容都整到一块了&#xff0c;在加上各自不同的见解与补充&#xff0c;各种冲突...... Findyou我经过多年测试总结基本定为4类测试(最多5类&#xff0c;自动化或者兼容…

2401d,d导入C的问题

原文 D中是否可用仅C头文件库? 在C语言中,我需要这样做: #define STB_DS_IMPLEMENTATION #include "stb_ds.h"在包含h文件前,必须在单个C文件中定义. 在D中试过: enum STB_DS_IMPLEMENTATION 1; import stb_ds;但它不管用.有建议吗?也许使用中间C文件会工作 ,但…

phpstudy面板Table ‘mysql.proc‘ doesn‘t exist解决办法

原因分析&#xff1a;误删了mysql数据库 解决办法如下&#xff1a; 1、停止服务 2、先把mysql文件夹下的data文件夹备份&#xff0c;因为data文件里存有数据库文件。然后再删除data文件。 3、cmd管理员命令进入到mysql中的bin目录下 &#xff0c;执行mysqld --initialize-…

【Python机器学习】用于回归的决策树

用于回归的决策树与用于分类的决策树类似&#xff0c;在DecisionTreeRegressor中实现。DecisionTreeRegressor不能外推&#xff0c;也不能在训练数据范围之外的数据进行预测。 利用计算机内存历史及格的数据进行实验&#xff0c;数据展示&#xff1a; import pandas as pd im…

.mkp勒索病毒数据怎么处理|数据解密恢复

导言&#xff1a; 在数字时代&#xff0c;勒索病毒如[datastorecyberfear.com].mkp [hendersoncock.li].mkp [myersairmail.cc].mkp正成为企业和个人的噩梦。本文将介绍[datastorecyberfear.com].mkp [hendersoncock.li].mkp [myersairmail.cc].mkp勒索病毒的特点、如何恢复被…

LIN总线故障检测

关注菲益科公众号—>对话窗口发送 “CANoe ”或“INCA”&#xff0c;即可获得canoe入门到精通电子书和INCA软件安装包&#xff08;不带授权码&#xff09;下载地址。 LIN总线自诊断 对LIN数据总线系统进行自诊断时&#xff0c;需使用“LIN主控模块”的“地址码”。 自诊断数…

化学DS-1040 Tosylate 抑制剂 1335138-89-0科研用途

化合物1219962-49-8是一种小分子化合物&#xff0c;分子式为C15H25N3O4&#xff0c;相对分子质量为305.37。该化合物为白色至灰白色粉末&#xff0c;不溶于水&#xff0c;易溶于有机溶剂&#xff0c;如甲醇、乙醇等。 AT791是一种与细胞周期调控相关的蛋白激酶&#xff0c;参与…

大功率TVS的基本介绍?|深圳比创达电子

在当今的电子世界里&#xff0c;电路保护变得越来越重要。那么什么是大功率TVS(Transient Voltage Suppressor)&#xff1f;它又是如何发挥作用的呢&#xff1f;TVS二极管&#xff0c;被设计用来保护敏感电子设备免受瞬态电压冲击&#xff0c;尤其是在功率较高的应用中尤为关键…

一文详解VScode 的远程开发

VS code登录服务器后进行编码和调试&#xff0c;VS code上的所有功能都可以使用&#xff0c;和在本地开发基本无区别。 一、配置免密远程登录 因为是要远程登录&#xff0c;那么需要通过使用ssh进行密钥对登录&#xff0c;这样每次登录服务器就可以不用输入密码了。 先来一句官…

五、C#与数据库交互( SQL注入与安全性)

在C#与数据库交互时&#xff0c;安全性是非常重要的一部分&#xff0c;特别是要防止SQL注入攻击。SQL注入是一种常见的网络攻击手段&#xff0c;攻击者通过在输入字段中注入恶意SQL代码来操纵数据库查询。以下是一些关于如何防止SQL注入的建议&#xff1a; 使用参数化查询: 这是…

常见测试技术都有哪些?

测试技术是用于评估系统或组件的方法&#xff0c;目的是发现它是否满足给定的要求。系统测试有助于识别缺口、错误&#xff0c;或与实际需求不同的任何类型的缺失需求。测试技术是测试团队根据给定的需求评估已开发软件所使用的最佳实践。这些技术可以确保产品或软件的整体质量…

【MySQL】utft8mb4 字符集及其排序规则(字符集校验规则)

UTF-8 是 Unicode 的一种实现方式&#xff0c;它可以表示世界上绝大多数的字符&#xff0c;包括大部分的中文字符。MySQL 从 5.5.3 版本开始支持 UTF-8 字符集&#xff0c;其中包括 UTF-8MB4。UTF-8MB4 是 MySQL 支持的最大的字符集&#xff0c;它可以表示 4 字节的 Unicode 字…

TDuckX 新功能介绍:提交后抽奖!

欢迎来到 TDuckX&#xff0c;我们最近推出了令人兴奋的新功能——提交后抽奖&#xff01;现在&#xff0c;您不仅可以收集用户的宝贵意见&#xff0c;还有机会为他们带来丰厚的奖励。让我们一起来了解这个令人期待的新功能吧&#xff01; 主要功能亮点&#xff1a; 1. 奖品设…

adb 使用的出现 adb server is out of date. killing

我知道你们肯定看到这种播客 像这种解决问题的方法是暂时的 , 因为我们Android studio 中 , 你在查看后台的时候发现 你的Android studio 也占用了一端口 , 就是说你把 Android studio 杀掉了只要打开 Android studio 打开就还是 关闭 cmd adb 看到一个新的方法 , win 10 中…

Spring——Spring AOP1(代理模式Proxy)

代理&#xff08;Proxy&#xff09;模式 1.创建工程 2.代理&#xff08;Proxy&#xff09;模式介绍 作用&#xff1a;通过代理可以控制访问某个对象的方法&#xff0c;在调用这个方法前做前置处理&#xff0c;调用这个方法后做后置处理。&#xff08;即&#xff1a; AOP的微观…

GDI+更改背景颜色

GDI更改背景颜色 CRect rectDlg;GetClientRect(rectDlg);//获得窗体的大小Graphics graphics(this->GetDC()->m_hDC);//设置背景颜色Gdiplus::SolidBrush redBrush(Color(240 , 240 , 240));//填充背景graphics.FillRectangle(&redBrush, 0, 0, rectDlg.Width(), re…

C类网络地址段通过变长子网掩码划分3个局域网

现有一个C类网络地址段192.168.1.0/24&#xff0c;局域网1有30个主机&#xff0c;局域网2有20个主机&#xff0c;局域网3有10个主机&#xff0c;请使用变长子网掩码给三个子网分别分配IP地址。 解答&#xff1a;需要先划分数量小的局域网&#xff0c;我这里从局域网3开始划分。…

208.【2023年华为OD机试真题(C卷)】停车场车辆统计(贪心算法实现-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-停车场车辆统计二.解题思路三.题解代码Python题…

单片机原理及应用:中断服务函数

承接上文&#xff0c;今天我们来学习一下中断服务函数&#xff0c;对中断不了解的朋友可以回顾一下笔者之前的文章 中断系统结构与控制寄存器 中断服务函数是嵌入式系统中用于处理中断事件的函数&#xff0c;在原版的C语言中并不存在。当发生中断事件时&#xff0c;系统将会跳…

(vue)el-cascader级联选择器实现单/多选最后一级并回显

(vue)el-cascader实现多选最后一级并回显 <el-form-item label"选择算法模型&#xff1a;"><el-cascaderv-model"formInline.algorithmId":options"modelOptions":props"{ value: id, label: name, multiple: true, emitPath: fal…