C++ 标准库类型 list
C++ 标准库类型 list
一、list 的使用与定义
1、使用 list 类型
- list 类型是双向链表,有迭代器
- 插入和删除的速度比较快,查询的速度慢
#include <list>
2、定义和初始化 list 对象
// 声明一个空的 list
list<int> l; // 声名并初始化,4个元素值都为100
list<int> l1(4,100);
二、list 操作
1、list 类成员函数
assign(): 给list赋值
back(): 返回最后一个元素
begin(): 返回指向第一个元素的迭代器
clear(): 删除所有元素
empty(): 如果list是空的则返回true
end(): 返回末尾的迭代器
erase(): 删除一个元素
front(): 返回第一个元素
get_allocator(): 返回list的配置器
insert(): 插入一个元素到list中
max_size(): 返回list能容纳的最大元素数量
merge(): 合并两个list
pop_back(): 删除最后一个元素
pop_front(): 删除第一个元素
push_back(): 在list的末尾添加一个元素
push_front(): 在list的头部添加一个元素
rbegin(): 返回指向第一个元素的逆向迭代器
remove(): 从list删除元素
remove_if(): 按指定条件删除元素
rend(): 指向list末尾的逆向迭代器
resize(): 改变list的大小
reverse(): 把list的元素倒转
size(): 返回list中的元素个数
sort(): 给list排序
splice(): 合并两个list
swap(): 交换两个list
unique(): 删除list中重复的元素
2、实例
#include <iostream>
#include <list>
using namespace std;// 创建一个链表对象,并赋值
list<int> l;
for (int i=1; i<=5; ++i) l.push_back(i); // 1 2 3 4 5// 在迭代器前面插入
it = l.begin();++it;
l.insert (it,10,20); // 1 10 20 2 3 4 5 // 删除元素,
l.erase(it) // 删除迭代器元素,可以范围删除
l.remove(2) // 删除第一个该值的元素// 从小到大升序排序
l.sort(); // 删除重复的元素
l.unique(); // 遍历链表
for (list<int>::iterator it=l.begin(); it != l.end(); ++it)cout << *it << endl;
三、forward_list
1、使用 forward_list 类型
- forward_list 类型是单向链表,有迭代器
#include <forward_list> // 声明一个空的 forward_list
forward_list <int> fl; // 声名并初始化,4个元素值都为100
forward_list <int> fl1(4,100);
2、forward_list 的操作
- 和 list 类似,但是只有单向操作
- 没有关于 back 的成员函数:back(),pop_back(),push_back()都没有
C++ 标准库类型 list相关推荐
- bitset类型, 标准库类型
C++ primer 17.2 bitset类型, 标准库类型 1 使得位运算更容易实现, 并且能够处理超过最长整型大小的位集合. bitset定义在bitset中 定义和初始化bitset 1 bi ...
- C++ 标准库类型 stack
C++ 标准库类型 stack 一.stack 的使用与定义 1.使用 stack 类型 stack 类型没有迭代器,不能用迭代器遍历队列 #include <stack> 2.定义和初始 ...
- C++ 标准库类型 queue
C++ 标准库类型 queue 一.queue 的使用与定义 1.使用 queue 类型 queue 类型没有迭代器,不能用迭代器遍历队列 #include <queue> 2.定义和初始 ...
- C++ 标准库类型 map
C++ 标准库类型 map 一.map 的使用与定义 1.使用 map 类型 标准库类型 map 就是字典,每个元素是一组键值对.使用红黑树实现. 关键字是互异的,不存在相同的键值. map 内部的元 ...
- C++ 标准库类型 set
C++ 标准库类型 set 一.set 的使用与定义 1.使用 set 类型 标准库类型 set 就是数学上的集合.使用红黑树实现. 每个元素只出现一次 #include <set> us ...
- C++ 标准库类型 vector
C++ 标准库类型 vector 一.vector 的使用与定义 1.使用 vector 类型 标准库类型 vector 表示对象的集合,也称容器. #include <vector > ...
- C++ 标准库类型 string
C++ 标准库类型 string 一.string 类型的使用和定义 1.使用 string 类型 标准库类型 string 表示可变长的字符序列 #include <string> us ...
- 标准库类型string的基本功能和使用
标准库类型string的基本功能和使用 String基本知识 初始化 基本操作 范围for语句 string定义的迭代器及其他 关于下标操作 示例代码 练习3.6 cctype.cpp punctRe ...
- 标准库类型String,Vector
string对象中每个字符的处理: 要用到 for(声明:表达式) 语句 比如简单的打印string str中每一个字符 --- string str("hello world!!!&quo ...
最新文章
- atom创建html文件夹,如何在Atom文本编辑器中按文件类型设置默认语法?
- 学习笔记(5)——实验室集群LVS监控Web界面配置
- docker WARNING: bridge-nf-call-iptables is disabled 处理
- android 4.x环境搭建
- git / 如何将其他分支的某些 commit 合并到当前分支中?
- 屏幕适配 部分知识点总结,CSDN小冰原创
- 洛谷P5212:SubString(SAM、LCT)
- 最小二乘法支持向量机一般用在什么场合_人工智能科普|机器学习重点知识——支持向量机SVM...
- Android中发现java代码设置的字体过大
- java lock可重入_一文彻底理解ReentrantLock可重入锁的使用
- install opencv on mac and use it in xcode
- GCC的__attribute__ ((constructor))和__attribute__ ((destructor))
- win10下安装SQL2000
- IE8 访问https安全证书错误;导航阻止 解决办法
- php 后台实现订单支付成功后语音提示
- 电商之 团购与B2C模式以及B2B2C模式对比
- 漏洞工具包2015年态势回顾:规模与分布
- git 的批量克隆 批量切换分支 批量pull
- 特征选择方法_识别最优的数据驱动特征选择方法以提高分类任务的可重复性
- Qt自定义控件(IP输入框,windows下)
热门文章
- PHP Curl transfer closed with outstanding read data remaining
- BZOJ 1020——[SHOI2008]安全的航线flight
- 分享一些好用的 Chrome 扩展
- R语言:文本(字符串)处理与正则表达式
- ASP.NET MVC 学习之路-4
- MySql项目中使用的小窍门
- HDU 3613 Best Reward 正反两次扩展KMP
- NYOJ-523 亡命逃窜(三维立体的BFS)
- 今週木曜日までの日程表
- numpy 点乘_斯坦福CS217(六)Spatial点乘示例