STL的简单应用(1)

STL的简单应用
栈(堆栈)
Stack是一种后进先出的数据结构,只有一个出口,只能操作最顶端的元素;(死胡同)
结构:
头文件:#include
定义:stack stack-name
(stack:自己定义的数据类型)
(data-name:栈中元素的数据类型)
(stack-name:栈的名称)
例如:stacks;
操作:
empty()-返回bool型,表示栈内是否为空(s.empty())
size()-返回栈内元素个数(s.stiz())
top()-返回栈顶元素(s.top())
pop()-移除栈顶元素(s.pop();)
push(data-type a)-向栈压入一个元素a(s.push(a))
队列(queue)(参照栈)
queue是一种后进后出的数据结构,从低端加入元素,从顶端取出元素。(开胡同)
头文件:#include
定义:queue stack-name
例如:queues;
操作:
empty()-返回bool型,表示队列内是否为空(s.empty())
size()-返回队列内元素个数(s.stiz())
front()-返回队列下一个元素(s.front)
pop()-移除queue中的一个元素(s.pop();)
push(data-type a)-将一个元素a置入队列(s.push(a))
back()-返回队列内的最后一个元素
vector(动态数组)
头文件和定义参照stack和queue。
操作:
empty() – 返回bool型,表示vector是否为空 (v.empty() )
size() – 返回vector内元素个数 (v.size() )
push_back(data_type a) 将元素a插入最尾端
pop_back() 将最尾端元素删除
v[i] 类似数组取第i个位置的元素(v[0] )
sort
头文件: #include
sort(开始,结束);(默认从大到小)
sort(开始,结束,cmp);
int cmp (int a,int b)
{
return a>b;}(从大到小排序)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++ STL(标准模板库)是一个非常强大和灵活的库,提供了许多基本数据结构和算法的实现。STL包括以下几个组件: 1. 容器(Containers) STL 容器提供了许多基本数据结构,如向量、链表、双向链表、队列、堆栈、集合、映射等。这些容器可以存储各种类型的数据,并提供了许多有用的操作,如插入、删除、查找、排序等。 2. 迭代器(Iterators) STL 迭代器是一种用于遍历容器中元素的工具。迭代器提供了一组统一的接口,使得算法可以直接使用不同类型的容器,而不需要了解具体容器的实现细节。 3. 算法(Algorithms) STL 算法提供了许多常用的算法,如排序、查找、计数、替换等。这些算法可以直接应用于容器上,并且具有良好的效率和可移植性。 使用 STL 可以大大简化编程过程,并提高程序的可读性和可维护性。下面是一个简单STL 示例: ```c++ #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> v{5, 3, 1, 4, 2}; // 创建一个整数向量 sort(v.begin(), v.end()); // 对向量进行排序 for (int i : v) { cout << i << " "; // 输出排序后的结果 } return 0; } ``` 在这个示例中,我们使用 STL 的向量容器存储整数,并使用 sort 算法对向量进行排序,最后输出排序后的结果。这个示例只是 STL 的冰山一角,还有许多其他的用法和技巧需要学习和掌握。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值