c++stl

迭代器
begin() 返回一个迭代器,指向第一个元素
end() 返回一个迭代器,指向最后一个元素之后
容器

vector:vector<类型> 名字;
vector ve;初始化
ve.clear();清空ve里的所有元素。
ve.empty();判断ve是否为空,如果是返回true,否则false
ve.size();返回ve的长度。注意这里返回的类型是unsigned int,如果ve是空的ve.size()
ve.pop_back();删除数组里的最后一个元素。
ve.push_back(const value_type &val);作用是在数组后面增加一个元素。括号里填的是ve里装的东西

set:set<类型> 名字;
set se
se.insert(1);插入元素1
if(se.find(1)!=se.end());判断元素是否属于集合
se.erase(1);删除元素1(如果存在)
如何通过迭代器从小到大遍历所有元素:
for (set::iterator i = d.begin(); i != d.end(); i++)
cout << *i << endl;

map:map<类型 类型> 名字;
map ma;

queue:queue<类型> 名字;
queue qu;
qu.front();获得队首元素

priority_queue:默认从大到小排列
priority_queue pqu;
top();获得队首元素

next_permutation:求全排列,要包含头文件
next_permutation(a,a+2);数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
05-30
STL(Standard Template Library)是C++标准库中的一部分,提供了一些常用的数据结构和算法,可以帮助开发者快速、高效地开发程序。STL包括以下几个组件: - 容器(Containers):包括vector、list、set、map等,在STL中容器是用来存储数据的数据结构,不同的容器有不同的特点,可以根据需要选择使用。 - 迭代器(Iterators):用于在容器中遍历元素,可以按照顺序或随机访问。 - 算法(Algorithms):包括排序、查找、遍历、删除等一些常用的算法,可以对容器中的数据进行各种操作。 - 函数对象(Function Objects):用于实现一些特定的函数功能,包括一元函数、二元函数、谓词等。 下面是一个简单的示例代码,展示了如何使用STL中的vector和algorithm: ```c++ #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> vec = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3}; sort(vec.begin(), vec.end()); // 对vector进行排序 for (int i = 0; i < vec.size(); i++) { cout << vec[i] << " "; // 输出排序后的vector } cout << endl; int x = 5; if (binary_search(vec.begin(), vec.end(), x)) { // 在vector中查找元素x cout << "Found " << x << endl; } else { cout << "Not found " << x << endl; } return 0; } ``` 在这个例子中,我们使用了STL中的vector和algorithm。首先定义一个vector `vec`,包含一些整型数据,然后使用`sort`函数对其进行排序。接着使用`binary_search`函数在vector中查找元素5,并输出查找结果。 STL可以大大简化C++代码的编写,提高程序的开发效率和代码质量。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值