STL容器:list双向链表学习
list是一个双向列表容器,完成了标准C++数据结构中链表的所有功能;
list与vector和deque类似,只不过其中的对象提供了对元素的随机访问。
STL以双向链表的方式实现list,访问需要从链表的某个端点开始;
list对象插入和删除一个元素所需时间与该元素在链表中的位置无关。
list不提供随机存取(No!),其优势是任何位置插入和删除都非常迅速;
在list中移动一段元素比在vector和deque中要快得多,在需要时可改变自身大小。
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 |
/* stllist.cpp
list是一个双向列表容器,完成了标准C++数据结构中链表的所有功能; list与vector和deque类似,只不过其中的对象提供了对元素的随机访问。 STL以双向链表的方式实现list,访问需要从链表的某个端点开始; list对象插入和删除一个元素所需时间与该元素在链表中的位置无关。 list不提供随机存取(No!),其优势是任何位置插入和删除都非常迅速; 在list中移动一段元素比在vector和deque中要快得多,在需要时可改变自身大小。 */ #include <iostream> using namespace std; typedef list<string> LISTSTRING; template<class T> }; //list大小度量函数 //list返回函数 //判断是否为空 //list元素访问 //list重置技术 //list容器内容交换 //list插入和删除技术 //erase操作 //clear操作 //list模板类函数 //list特殊函数 listInt.push_back(52); for (LISTINT_ITER pListIntIter = listInt.begin(); list<int> cl1; //比merge更好用的splice //保证任意连个连续存储值不同 cin.get(); |
STL容器:list双向链表学习相关推荐
- 【C++ STL学习之三】容器deque深入学习
C++ STL容器deque和vector很类似,也是采用动态数组来管理元素. 使用deque之前需包含头文件: #include <deque> 它是定义在命名空间std内的一个clas ...
- 【小白学习C++ 教程】二十一、C++ 中的STL容器Arrays和vector
@Author:Runsen C++的标准模板库(STL)是提供数组.向量.队列等数据结构的模板类的集合.STL是由容器.算法.迭代器组成的库. 容器 容器存储对象和数据.它们基本上是基于模板的泛型类 ...
- C++ 笔记(19)— 标准模板库(STL容器、STL迭代器、STL算法、STL容器特点、STL字符串类)
C++ 标准库可以分为两部分: 标准函数库: 这个库是由通用的.独立的.不属于任何类的函数组成的.函数库继承自 C 语言. 面向对象类库: 这个库是类及其相关函数的集合. C++ 标准库包含了所有的 ...
- STL源码剖析学习七:stack和queue
STL源码剖析学习七:stack和queue stack是一种先进后出的数据结构,只有一个出口. 允许新增.删除.获取最顶端的元素,没有任何办法可以存取其他元素,不允许有遍历行为. 缺省情况下用deq ...
- c++ map 修改value_C++知识分享之STL容器:set 容器与 map 容器的简单应用
set容器中一些函数,取自百度其他大佬已总结好的,如有侵权,请联系删除! set的各成员函数列表如下: c++ stl容器set成员函数:begin()--返回指向第一个元素的迭代器 c++ stl容 ...
- c++STL容器的priority_queue
TL容器的priority_queue STL容器的priority_queue的简介 STL容器的priority_queue的简介 最大值优先级队列.最小值优先级队列 优先级队列适配器 STL ...
- c++STL容器的List
STL容器的List List简介 list对象的默认构造 list头尾的添加移除操作 list的数据存取 list与迭代器 list对象的带参数构造 list的赋值 list的大小 list的插入 ...
- STL容器底层数据结构的实现
C++ STL 的实现: 1.vector 底层数据结构为数组 ,支持快速随机访问 2.list 底层数据结构为双向链表,支持快速增删 3.deque 底层 ...
- 用法 stl_C++STL 容器篇
前言 上一章节主要是详细介绍了C++泛型编程基础,不清楚的可以回顾一下哦.本章节主要针对于C++STL(标准模板类库)做个详细介绍.标准模板类库也就是别人写的模板类,主要内容是各种数据结构的封装,以及 ...
- C++知识分享之STL容器:set 容器与 map 容器的简单应用
set容器中一些函数,取自百度其他大佬已总结好的,如有侵权,请联系删除! set的各成员函数列表如下: c++ stl容器set成员函数:begin()--返回指向第一个元素的迭代器 c++ stl容 ...
最新文章
- 卷积网络基础知识---Depthwise Convolution Pointwise Convolution Separable Convolution
- 分区文件http://wenku.baidu.com/view/d839d1868762caaedd33d4b7.html
- HTML子选择器怎么加图,CSS伪类选择器:before、:after使用:插入字符、插入图片、插入项目编号...
- 二叉树的深度_十七:二叉树的最小深度
- 【qduoj】C语言课程设计_约瑟夫问题
- “光纤之父”高锟辞世!但他的诺奖演讲辞, 青年不可不读!
- 一个简单的封ip规则
- algorithm:next_permutation
- 基于tcpdf将html转成pdf
- C ++程序将字符串的每个单词的首字母转换为大写,将其他转换为小写
- 微信小程序蓝牙打印(中文乱码已解决)-分包发送(安卓和苹果手机均兼容)
- Imbalance data——数据不平衡问题
- 粗糙集理论介绍(一)(rough set)
- 录屏:mac系统自带功能录制屏幕的方法
- 腾讯云账号注册方法介绍
- Timingdesigner入门 基础 教程
- 「自控元件及线路」4 小功率同步电机
- 联系超级计算机,与超级计算机共事是一种怎样的体验?
- 对传感器及传感器的应用知多少?
- 用JSSE定制SSL连接
热门文章
- JS调用ATL DLL
- 【OpenCV】图像变换(五)-仿射变换和透视变换
- NSGA2 算法Matlab实现
- 科学语言与matlab计算 实验2、3
- 【机器学习】标准化和归一化辨析
- Arcpy 去除shp文件ZM值代码及工具箱
- java钝化_session的活化与钝化 (转)
- 实习成长之路:操作系统——CPU有哪些工作模式呢?
- android andbase,andbase
- Mysql同个用户退款订单_微信退款全款退,退一部分,分开退一次以上区别跳坑[订单金额或退款金额与之前请求不一致]...