C++学习
weixin_42573595
这个作者很懒,什么都没留下…
展开
-
STL中一些常用算法
函数对象函数对象概念: 重载函数调用操作符的类,其对象称为函数对象 函数对象使用重载的()时,行为类似函数调用,也叫仿函数本质:函数对象(仿函数)是一个类,不是一个函数函数对象使用特点:函数对象在使用时,可以像普通函数那样调用,可以有参数,可以有返回值 函数对象超出普通函数的概念,函数对象可以有自己的状态 函数对象可以作为参数传递谓词概念:返回bool类型的仿函数称为谓词 如果operator()接受一个参数...原创 2020-09-25 15:04:54 · 278 阅读 · 0 评论 -
map/multimap容器---C++篇
map/multimap容器map基本概念简介: map种所有元素都是pair pair种第一个元素为key(键值),起到索引作用,第二个元素为value(实值) 所有元素都会根据元素的键值自动排序本质:map/multimap属于关联式容器,底层结构是用二叉树实现优点:可以根据key值快速找到value值map/multimap区别: map不允许容器中有重复key值元素 multimap允许容器中有重复key值元素ma...原创 2020-09-24 10:39:24 · 136 阅读 · 0 评论 -
set容器---C++篇
set/multiset容器set基本概念简介:所有元素都会在插入时自动被排序本质:set/multiset属于关联式容器,底层结构是用二叉树实现set和multiset区别: set不允许容器中有重复的元素 multiset允许容器中有重复的元素set构造和赋值功能描述:创建set容器以及赋值构造: set<T> st; //默认构造函数 set(const set &set); //拷贝构...原创 2020-09-23 21:31:46 · 1145 阅读 · 0 评论 -
list容器---C++篇
List容器list基本概念功能:将数据进行链式存储链表是一种物理存储单元上非连续的存储结构,数据元素的逻辑顺序是通过链表中的指针链实现的链表的组成:链表是由一系列结点组成结点的组成:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域STL中的链表是一个双向循环链表优点:采用动态存储分配,不会造成内存浪费和溢出 链表执行插入和删除操作十分方便,修改指针即可,不需要移动大量元素缺点:容器遍历速度,没有数组快 占用空间比数组大...原创 2020-09-23 19:29:59 · 65 阅读 · 0 评论 -
stack容器和queue容器---C++篇
stack容器stack基本概念stack是一种先进后出(后进先出)的数据结构,它只有一个出口注:栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为stack常用接口构造函数: stack<T> stk; //stack采用模板类实现,stack对象的默认构造形式 stack(const stack &stk); //拷贝构造函数赋值操作: stack& operator=(const stack &...原创 2020-09-22 22:01:00 · 81 阅读 · 0 评论 -
deque容器---STL篇
deque构造函数功能描述:deque容器构造函数原型: deque<T> deqT; //默认构造形式 deque(beg, end); //构造函数将[beg, end)区间中的元素拷贝给本身 deque(n, elem); //构造函数将n个elem拷贝给本身 deque(const deque &deq); //拷贝构造函数#include <iostream>#include <...原创 2020-09-21 20:25:43 · 73 阅读 · 0 评论 -
vector容器篇
vector容器vector基本概念功能:vector数据结构和数组非常相似,也称为单端数组vector与普通数组区别:不同之处在于数组是静态空间,而vector可以动态扩展动态扩展:并不是在原空间之后续接新空间,而是找更大的内存空间,然后将原数据拷贝新空间,释放原空间。vector容器的迭代器是支持随机访问的迭代器vector构造函数功能描述:创建vector容器函数原型:vector<T> v; //采用模板实现类实现...原创 2020-09-20 20:21:39 · 48 阅读 · 0 评论 -
STL笔记-----C++篇
STL的诞生 长久以来,软件界一直希望建立一种可重复利用的东西 C++的面向对象和泛型编程思想,目的就是复用性的提升 大多数情况下,数据结构和算法都未能有一套标准,导致被迫从事大量重复工作。 为了建立数据结构和算法的一套标准,诞生了STLSTL基本概念 STL(Standard Template Library,标准模板库) STL从广义上分为:容器(container)、算法(algorithm)、迭代器(iterator) ...原创 2020-09-18 20:44:44 · 158 阅读 · 0 评论