C++ 集合类
发布日期:2021-07-22 07:28:46 浏览次数:7 分类:技术文章

本文共 2726 字,大约阅读时间需要 9 分钟。

文章目录


一、vector 类

1.指定vector基类型

vector
vector
vector
尖括号内的类型称为基类型,包含基类型规格说明的类在面向对象中被称之为参数化的类,c++中参数化的类通常被称为模板

2. 声明vector对象及其操作

vector
abc; 从vector中选取元素可以采用和数组一样的方式 对于vector引用调用(加一个 &)比默认复制调用更高效 声明n个元素的vector: vector
abc(n);

二、stack 类

栈是后入先出的。成员函数有:

1.栈的声明

std::deque<int> mydeque (3,100); // deque with 3 elements

std::vector<int> myvector (2,200); // vector with 2 elements
std::stack<int> first; // empty stack
std::stack<int> second (mydeque); // stack initialized to copy of deque
std::stack<int,std::vector<int> > third; // empty stack using vector
std::stack<int,std::vector<int> > fourth (myvector);
std::cout << "size of first: " << first.size() << ‘\n’;
std::cout << "size of second: " << second.size() << ‘\n’;
std::cout << "size of third: " << third.size() << ‘\n’;
std::cout << "size of fourth: " << fourth.size() << ‘\n’;
结果为:0 3 0 2

2.bool empty() const

判断栈是否为空

stack<int> c; c.empty()

3.size_type size() const

返回栈中元素数量

c.size();

4.value_type& top();

const value_type &top() const;

返回栈顶元素

c.top();

5.void push(const value_type& val)

在栈顶插入一个元素

c.push(value);

6.void emplace(args&& args);

在栈顶增加一个元素

c.emplace(value)

7.void pop()

出栈,即删除栈顶元素

c.pop();

8.void swap (stack& x);

交换两个栈中的内容

c.swap(d);

9.与vector一样,重载了运算符:== != < <= > >=

此处转载自:http://www.cnblogs.com/shrimp-can/p/5283207.html

三、queue 类

queue 模板类的定义在<queue>头文件中。

与stack 模板类很相似,queue 模板类也需要两个模板参数,一个是元素类型,一个容器类
型,元素类型是必要的,容器类型是可选的,默认为deque 类型。
定义queue 对象的示例代码如下:
queue<int> q1;
queue<double> q2;

queue 的基本操作有:

入队,如例:q.push(x); 将x 接到队列的末端。
出队,如例:q.pop(); 弹出队列的第一个元素,注意,并不会返回被弹出元素的值。
访问队首元素,如例:q.front(),即最早被压入队列的元素。
访问队尾元素,如例:q.back(),即最后被压入队列的元素。
判断队列空,如例:q.empty(),当队列空时,返回true。

此处转载自:https://www.cnblogs.com/hdk1993/p/5809180.html

四、map 类

map的基本操作函数:

C++ maps是一种关联式容器,包含“关键字/值”对 begin()         返回指向map头部的迭代器 clear()        删除所有元素 count()         返回指定元素出现的次数 empty()         如果map为空则返回true end()           返回指向map末尾的迭代器 equal_range()   返回特殊条目的迭代器对 erase()         删除一个元素 find()          查找一个元素 get_allocator() 返回map的配置器 insert()        插入元素 key_comp()      返回比较元素key的函数 lower_bound()   返回键值>=给定元素的第一个位置 max_size()      返回可以容纳的最大元素个数 rbegin()        返回一个指向map尾部的逆向迭代器 rend()          返回一个指向map头部的逆向迭代器 size()          返回map中元素的个数 swap()           交换两个map upper_bound()    返回键值>给定元素的第一个位置 value_comp()     返回比较元素value的函数

此处转自:https://www.cnblogs.com/fnlingnzb-learner/p/5833051.html

五、set 类

set中常用的方法

begin()    ,返回set容器的第一个元素

end()      ,返回set容器的最后一个元素

clear()    ,删除set容器中的所有的元素

empty()    ,判断set容器是否为空

max_size()   ,返回set容器可能包含的元素最大个数

size()      ,返回当前set容器中的元素个数

rbegin     ,返回的值和end()相同

rend()     ,返回的值和rbegin()相同

此处转自:https://blog.csdn.net/yas12345678/article/details/52601454


转载地址:https://blog.csdn.net/m0_45689014/article/details/112945434 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:力扣 剑指offer04 二维数组中查找
下一篇:C++ 流类

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月10日 21时20分32秒