C++容器
- 总览
-
deque是一个双向队列,可以在头尾快速的插入和删除
-
- 构造方式
array容器大小是固定的,所以不能用不定的构造范式;字符串必须知道每个字符是什么
- 什么是迭代器“”?
L现在就是一个迭代器
insert/erase 中间插入删除;vector连续存储
- forwardlist 为什么还要?
- 省空间
- 极致的效率,所以超级轻量级
- 单向链表,没有办法删除特定元素的指针,因为要找上一个指针
- insert怎么用
迭代器可以是iterator也可以是cosnt当然容器不能是const;
- 插入n个x
- 模板类型
- 尽可能降低对未知参数的要求
- emplace引进少一层拷贝,万能引用,完美转发
直接构造好放进容乃公器、
- 提供比较运算符
- equal
- 迭代器的种类
-
- 容器适配器
-
优先队列实际上是用堆来实现的
- 它们不是迭代器,不能迭代,不是容器
- 它们有底层容器,封装成接口,重新定义名字
-
非常小心,解引用,内部代理类实现,把空间压缩为一位
- bitset 大小是固定的,二进制位运算支持按位与,位的集合
- boost库,在你了解了标准库之外最应该了解的库
-
- 标准库里的算法
- Algorithm
想做:第一排序,快速的排序,第二把重复的元素去掉,找出不重复的元素排在前列,重复的元素弄到end后面去,it是返回的一个迭代 假设去重后元素有k个,it就是指向k的下一个元素。unique必须给一个排过序的元素。n有多少个去重的元素
- 如何使用谓词
- 不要滥用重载运算符
点的大小关系是不明确的,可以是横坐标,也可是纵坐标,也可以是模长,至少是一个函数去表示
static函数不是成员函数,作用域在类内,可以使用类的私有成员,不存在this指针,必须要指明哪个对象
-
假如我比较的那个特定值是动态变化的呢
- struct类集合如何使用
lessthan临时对象创建
- Algorithm
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步