标签:erase 时间 deque 数据结构 顺序表 tor ase 迭代器 判断
c++中期 先学数据结构再根据给定的数据结构写算法
stl是基于c++的标准模板库 1998年出现的一个标准
容器 算法 vector deque list map (set multiet multimap)
分为两类 1.序列式容器可序的群集 每个元素都有固定的位置 元素的位置取决于插入的时间地点 和元素值无关(list deque vector)
2.关系(联)式容器 是已序群集(逻辑次序) 取决于和特定的排序规律(set map multiset multimap)
优点:元素进入容器 序列式优于关系式
搜索元素时 关系式优于序列式
二分查找(折半查找)最优的查找他自己内部已经有了一部分顺序 所以快
STL容器必须满足一下条件:
1.元素进入容器实现插入操作时,内部实现拷贝操作 因此STL容器内每一个元素都必须能够被拷贝 &不行 引用类型不能拷贝
2.所有的元素形成次序,多次遍历每个元素的次序总是相同的(物理次序)。
3.一般而言,各项操作并非绝对安全,调用者必须确保传给操作函数的参数符要求。
size empty 关系判断 swap insert erase clear push_back pop_back
迭代器:科遍历stl容器内全部或部分元素的一个对象,对象行为理解为执政(只能指针)
增删改查 依靠迭代器区找元素
vector 动态数组 C++标准没有要求动态数组实现vector 只是规定了相应的条件和操作复杂度
栈 链式栈(链表) 顺序栈(顺序表 数组)
C语言是编译型语言
java解析型语言
vector是一个动态数组 支持随机存取 只要知道位置 很方便直接存取这个位置的元素
在尾部插入和删除时 性能比较高 在前端和中部进行插入和删除 性能想比较要做大量的检查
容器大小可以变化 注意:如果大小发生变化 可能会导致内存重新分配
标签:erase 时间 deque 数据结构 顺序表 tor ase 迭代器 判断
原文地址:https://www.cnblogs.com/liugangjiayou/p/11402657.html