码迷,mamicode.com
首页 > 其他好文 > 详细

stl概述

时间:2019-08-23 22:19:26      阅读:112      评论:0      收藏:0      [点我收藏+]

标签: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是一个动态数组 支持随机存取 只要知道位置 很方便直接存取这个位置的元素

在尾部插入和删除时 性能比较高 在前端和中部进行插入和删除 性能想比较要做大量的检查

容器大小可以变化 注意:如果大小发生变化 可能会导致内存重新分配

stl概述

标签:erase   时间   deque   数据结构   顺序表   tor   ase   迭代器   判断   

原文地址:https://www.cnblogs.com/liugangjiayou/p/11402657.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!