python删除列表元素_追求简单C++之删除STL列表的元素
本文介绍了STL列表中的删除方面。
1.使用list :: erase():此函数的目的是从列表中删除元素。使用此功能可以删除范围内的单个或多个连续元素。该函数有两个参数,开始迭代器和结束迭代器。
2.时间复杂度: O(n)其中(n是列表的大小)。
#include #include // for list operations using namespace std; int main() { list list1={10,15,20,25,30,35}; list::iterator it = list1.begin(); list::iterator it1 = list1.begin(); advance(it,2); advance(it1,5); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; list1.erase(it); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; it = list1.begin(); advance(it,2); list1.erase(it,it1); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; }
输出:
原始列表是:10 15 20 25 30 35 使用delete()删除1个元素后的列表:10 15 25 30 35 使用delete()删除多个元素后的列表:10 15 35
2.使用list :: pop_front()和list :: pop_back():
1.pop_back():此函数从列表中删除最后一个元素。这样可以将列表的大小减少1。
时间复杂度:O(1)
2.pop_front():此函数从列表中删除第一个元素,并移动后续元素。这样可以将列表的大小减少1。
时间复杂度:O(1)
#include #includeusing namespace std; int main() { list list1={10,15,20,25,30,35}; cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; list1.pop_front(); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; list1.pop_back(); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; }
输出:
原始列表是:10 15 20 25 30 35 使用pop_front()删除第一个元素后的列表:15 20 25 30 35 使用pop_back()删除最后一个元素后的列表:15 20 25 30
3.使用remove()和remove_if():
1.remove():此函数删除在其参数中传递的值的所有出现。它与“ erase()”的区别在于“ erase()”按位置删除值,而“ remove()”则删除传递的值。列表的大小减少了已删除的出现次数。
时间复杂度:O(n)
2.remove_if():此函数删除将“ true”返回给在其参数中传递的函数的值的出现。
时间复杂度:O(n)
#include #includeusing namespace std; bool is_div_5(const int& num) { return num%5==0;} int main() { list list1={10,14,20,22,30,33,22}; cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; list1.remove(22); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; list1.remove_if(is_div_5); cout << for (list::iterator i=list1.begin(); i!=list1.end(); i++) cout << *i << " "; cout << endl; }
输出:
原始列表是:10 14 20 22 30 33 22 删除所有22次出现后的列表:10 14 20 30 33 删除的列表:15的所有倍数之后4 33
学习更多,以及免费领取学习资料和教程,请点击下方了解更多链接:
python删除列表元素_追求简单C++之删除STL列表的元素相关推荐
- python打造excel神器_超简单:用Python让Excel飞起来
前言 如何获取学习资源 章Python快速上手 1.1为什么要学习用Python控制Excel 1.2Python编程环境的搭建 1.2.1安装Python官方的编程环境IDLE 1.2.2安装与配置 ...
- python批量删除特定字符_根据某个特定字符删除一行
前言 最近接了几个新项目的需求,为了快速开发,我们的策略是:基于原来的一套维定项目代码及数据库基础,去开发新的项目,一般步骤如下: 在原来的代码git基础上拉出一个新的git项目地址 修改代码的项目名 ...
- python矩阵中找满足条件的元素_从numpy数组中取出满足条件的元素示例
例如问题:从 arr 数组中提取所有奇数元素. input:arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) output: #> array([1, ...
- iphone照片永久删除怎么恢复_微信数据怎么永久删除不被恢复?只删除聊天记录没用,打开这里彻底删除!...
微信数据怎么永久删除不被恢复?这个问题已经越来越让人头疼,似乎单纯的删掉与对方的对话框已经不能再让人放心,微信里有太多不想被人知道的隐私,不管是工作还是生活,学会彻底删除微信聊天记录,已经越来越重要. ...
- mysql逻辑删除的问题_数据库表涉及-逻辑删除
对于只进行逻辑删除的表,如 CREATE TABLE `pics` ( `pid` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `aid` bigint( ...
- linux删除用户所有信息_如何在Linux上删除用户(以及删除所有跟踪)
linux删除用户所有信息 Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / Shutterstock Deleting ...
- python列表常用方法_第24p,必须掌握,列表的常用方法
大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第24篇文章,第二阶段的课程:Python基础知识:Python中的列表之列表的常用方法. 学习本课程,建议先看一遍:[计算机基础知 ...
- python爬微博关键字_一个简单的python爬虫实践,爬取包含关键词的新浪微博
此项目主要功能是通过微博"搜索"页面,每天自动爬取所有包含自定list中词汇的微博原数据.低速可控,简单粗暴,适合用来有针对性的搜集数据量不是很大的包含关键词的微博,每日可爬3-6 ...
- js删除两个集合中共同元素_多个集合中的共同和独特元素
js删除两个集合中共同元素 本周,我们将暂时中断较高级别的问题和技术文章,以解决我们中许多人可能面临的一些代码问题. 没什么花哨的或太辛苦的,但是有一天它可能会节省您15分钟的时间,偶尔回到基础上也很 ...
最新文章
- Linux 下使用命令行查看 內核版本 | 系統版本 | cpu 位數 | 內存使用
- [python爬虫] BeautifulSoup设置Cookie解决网站拦截并爬取蚂蚁短租
- YaoLingJump开发者日志(七)
- SBO中的manager用户已锁定
- shell grep 变量_老司机给出的关于 shell 脚本的8个建议,必收!
- lua 字符串分割_Lua函数式编程(中)
- 软件工程的本质,一点个人理解
- 修改WordPress主题,中文显示乱码的解决办法
- 集成springboot案例_SpringBoot开发者都在用的五款优质扩展,每个都很能打!
- 雕虫晓技(十) Android超简单气泡效果
- 基于python sklearn的 SVM支持向量机 类实现
- 转载——yum源的超级简单配置
- python实战项目(Django技术点)
- 【金蝶K3】新/老单据转换流程相关表说明(单据转换流程下推老单,钩稽关系可为严格控制)
- [蓝桥杯] 青出于蓝胜于蓝
- 计算机程序设计专业大学排名,全国计算机专业大学排名一览表
- JB的Shell之旅-30分钟带你入门
- 语音唤醒的具体技术方案
- 好朋友结婚了,祝福你们!
- 色彩大全,色彩配色大全
热门文章
- Linux缺少qt5core,关于qt5:无法运行Qt应用:找不到版本“ Qt_5”
- koa2入门(3)mongoose 增删改查
- Navicat使用教程:使用Navicat Premium 12自动执行数据库复制(四)
- [轮子系列]Google Guava之CharMatcher源码分析
- 怎么运行Typescript
- 工作者对象HttpWorkerRequest
- iOS 开发-文件下载原理
- BOA+CGI+SQLite 随笔
- windows 8 远程桌面(RemoteFX )
- 国产海量存储系统的新突破