ca13a_c++_顺序容器的操作6删除元素
/*ca13a_c++_顺序容器的操作6删除元素
c.erase(p) //删除迭代器p指向的位置
c.erase(b,e) //删除b to e之间的数据,迭代器b包括,e不包括
c.clear()//删除所有
c.pop_back() //删除最后一个
c.pop_front() //删除最前的一个
find查找算法
list<string>::iterator iter1= find(slist.begin(), slist.end(), s);
注意:c.pop_front()只适用于list和deque容器
vector没有pop_front.
txwtech
/*ca13a_c++_顺序容器的的操作6删除元素
c.erase(p) //删除迭代器p指向的位置
c.erase(b,e) //删除b to e之间的数据,迭代器b包括,e不包括
c.clear()//删除所有
c.pop_back() //删除最后一个
c.pop_front() //删除最前的一个
find查找算法
list<string>::iterator iter1= find(slist.begin(), slist.end(), s);
注意:c.pop_front()只适用于list和deque容器
vector没有pop_front.
txwtech
*/
#include <iostream>
#include <list>
#include <deque>
#include <vector>
#include <string>
#include <algorithm> using namespace std; int main()
{
list<string> slist;
slist.push_back("apple");
slist.push_back("bill");
slist.push_back("cat");
slist.push_back("dog");
slist.push_back("egg");
slist.push_back("fish");
slist.push_back("girl"); slist.pop_front();
slist.pop_back(); string s("dog");//s="dog"
string s2("fish");
list<string>::iterator iter1= find(slist.begin(), slist.end(), s);
list<string>::iterator iter2 = find(slist.begin(), slist.end(), s2); if (iter1 != slist.end() && iter2 != slist.end())
//slist.erase(iter1);//删除查找到的内容
{
slist.erase(iter1, iter2);//删除iter1 到iter2,不包括iter2
cout << "找到了dog与fish,dog删除掉了,不包括fish" << endl;
} else
cout << "没有找到" << endl; slist.clear();//清空数据
if (!slist.empty())//如果非空,就显示
{
for (list<string>::iterator iter = slist.begin();
iter != slist.end(); ++iter)
cout << *iter << endl;
}
else
cout << "目前容器是空的。" << endl; return ;
}
ca13a_c++_顺序容器的操作6删除元素的更多相关文章
- cb14a_c++_顺序容器的操作7_赋值与交换(swap)_vector转list
cb14a_c++_顺序容器的操作7_赋值与交换(swap) vector数据赋值给list, slist.assign(svec.begin(), svec.end());//这样可以转 svec- ...
- cb11a_c++_顺序容器的操作4_容器大小操作_resize-max_size
cb11a_c++_顺序容器的操作4 2 容器大小的操作 3 c.size() 容器当前的个数 4 c.max_size(),容器最大存储量 5 c.empty() 是否为空 6 c.resize(n ...
- cb10a_c++_顺序容器的操作3关系运算符
cb10a_c++_cb09a_c++_顺序容器的操作3 2 顺序容器的操作3 3 关系运算符 4 所有的容器类型都可以使用 5 比较的容器必须具有相同的容器类型,double不能与int作比较 6 ...
- cb09a_c++_顺序容器的操作2-在顺序容器中添加元素_插入数据
cb09a_c++_顺序容器的操作2在顺序容器中添加元素vector不能向前插入数据,list可以用insertc.push_back(t);c.push_front(t);c.insert(p,t) ...
- cb08a_c++_顺序容器的操作1
cb08a_c++_顺序容器的操作1容器定义的类型别名begin(闭区间)和end(开区间)成员{first,last)左闭右开,左包括,右不包括,end()指向最后一个的下一个. /*cb08a_c ...
- cb16a_c++_顺序容器的选用_排序_二分查找
/*cb16a_c++_顺序容器的选用_排序_二分查找顺序容器: 1.vector的优点与缺点 vector优点:排序利用下标,快速排序,做二分查找非常快 2.list的优点与缺点 list优点:插入 ...
- cb03a_c++_数据结构_顺序容器_STL_stack
/*cb03a_c++_数据结构_顺序容器_STL_stack堆栈:LIFO--Last In First Out后进先出,用于系统程序设计自适应容器(容器适配器),不是独立的容器,是一个适配器栈适配 ...
- cb02a_c++_数据结构_顺序容器_STL_list类_双向链表
/*cb02a_c++_数据结构_顺序容器_STL_list类_双向链表实例化std::list对象在list开头插入元素在list末尾插入元素在list中间插入元素,插入时间恒定,非常快.数组:中间 ...
- cb01a_c++_数据结构_顺序容器_STL_deque类
/*cb01a_c++_数据结构_顺序容器_STL_deque类deque是一个动态数组,比vector更加灵活.两者都属于动态数组deque与vector非常类似deque可以在数组开头和末尾插入和 ...
随机推荐
- thinkphp路由简介和设置使用
use think\Route; //静态路由 Route::rule('/', 'index/index/index'); Route::rule('test', 'index/index/test ...
- h5 js判断是IOS系统还是android系统
function detect(){ var equipmentType = ""; var agent = navigator.userAgent.toLowerCase(); ...
- Linux下db2V10.5命令行安装超详细图文教程(附下载地址)
下载地址:https://pan.baidu.com/s/1GtF03x1FMF3IsGdSiBJu-g 提取码:8vfj 失效了发邮件:wells974@163.com 一.db2prereqche ...
- css 图片宽度、居中、倒影
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ActiveMQ 笔记(七)ActiveMQ的多节点集群
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.Activemq 的集群思想 1.使用Activemq集群的原因 面试题: 引入消息中间件后如何保证 ...
- 快速搭建基于Spring Boot + Spring Security 环境
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.Spring Security 权限管理框架介绍 简介: Spring Security 提供了基于 ...
- Ondemand和Interactive gonernor工作逻辑简述
ondemand 简述: 1.采样时间:sampling_rate,单位us 2.cpu usage是仅统计最新1us的一个smaple周期,以%体现cpu busy程度. 3.一般情况下,next频 ...
- Java实现 蓝桥杯VIP 算法训练 平方计算
问题描述 输入正整数a, m,输出a2%m,其中表示乘方,即a^2表示a的平方,%表示取余. 输入格式 输入包含两个整数a, m,a不超过10000. 输出格式 输出一个整数,即a^2%m的值. 样例 ...
- Java实现 蓝桥杯VIP 算法提高 阮小二买彩票
算法提高 阮小二买彩票 时间限制:1.0s 内存限制:512.0MB 问题描述 在同学们的帮助下,阮小二是变的越来越懒了,连算账都不愿意自己亲自动手了,每天的工作就是坐在电脑前看自己的银行账户的钱是否 ...
- Linux文件处理命令touch、cat、more、head详解
命令touch详解 命令touch,所在路径及执行权限为: 可以看到,命令的路径为:/usr/bin/touch ,所以它的执行权限为所有用户 命令基本功能是创建空文件 (可以同时创建多个空文件,文件 ...