STL中会用到的函数

简介: 这段代码示例展示了C++中几种常用容器的使用,包括`vector`、`list`、`map`、`queue`、`deque`和`stack`。它涵盖了初始化、操作方法如添加、删除元素、排序、查找以及容器属性的查询等。同时,还提到了`algorithm`库中的`erase`、`sort`和边界查找函数。
#include<vector>
vector<int>s(n,ele)
    .assign(n,ele)
    .empty()
    .capacity()
    .size()
    .push_back(ele)
    .pop_back()
    insert(iterator pos,ele)
    erase(iterator begin,iterator end)
    clear()
    .front()
    .back()
    .reverve(int len)
    sort(iterator,iterator)
#include<list>//双向循环链表
list<int>l1(5,3)53
list<int>l2{
   1,2,3,4}
list<int>l2(l1)//迭代器中不能加数字
    .push_back()
    .pop_back()
    .find(iterator a,iterator b,3)->iterator
    .insert(pos,3)
    .erase(iterator,iterator)
    .remove(int)
    .unique()//去重
    .sort()
    .end()

#include<map>
map<int,char>mp//<key,value>
    .begin()
    .clear()
    .count(int)
    .empty()
    .end()
    .erase(element)
    .size()
    .find(int)->iterator
    mp.insert(map<int,char>::value_type(5,'d'))
#include<queue>//队列
    queue<int>q1
    .back()
    .empty()
    .front()
    .pop()
    .push()
    .size()
#include<deque>
    queue<type>v(n,value)
    queue<type>v{
   ....}
    .end()
    .begin()
    .empty()
    .at(index)->element
    .front()
    .back()
    .assign()
    .push_back()
    .push_front()
    .pop_back()
    .pop_front()
#include<stack>
    .push()
    .pop()
    .top()
    .empty()
    .size()
#include<algorithm>
    erase()
    sort()
    upper_bound(it,it,int val)返回第一个大于等于val的迭代器
    lower_bound(it,it,int val)小于等于//前提是有序
    int ants=unique(arr,arr+7)-arr;//unique()返回最后无重复数的地址,是个迭代器
目录
相关文章
|
设计模式 JavaScript 前端开发
从工厂到单例再到策略:Vue.js高效应用JavaScript设计模式
【8月更文挑战第30天】在现代Web开发中,结合使用JavaScript设计模式与框架如Vue.js能显著提升代码质量和项目的可维护性。本文探讨了常见JavaScript设计模式及其在Vue.js中的应用。通过具体示例介绍了工厂模式、单例模式和策略模式的应用场景及其实现方法。例如,工厂模式通过`NavFactory`根据用户角色动态创建不同的导航栏组件;单例模式则通过全局事件总线`eventBus`实现跨组件通信;策略模式用于处理不同的表单验证规则。这些设计模式的应用不仅提高了代码的复用性和灵活性,还增强了Vue应用的整体质量。
216 1
|
前端开发
HTML+CSS动画实现动感3D卡片墙:现代Web设计的视觉盛宴
HTML+CSS动画实现动感3D卡片墙:现代Web设计的视觉盛宴
|
域名解析 网络协议 Linux
CentOS7 安装 Docker
本文主要为大家讲解如何在 CentOS7 上安装 Docker。
23273 2
CentOS7 安装 Docker
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
696 0
|
SQL 安全 Java
Java安全编程:防范网络攻击与漏洞
【4月更文挑战第15天】本文强调了Java安全编程的重要性,包括提高系统安全性、降低维护成本和提升用户体验。针对网络攻击和漏洞,提出了防范措施:使用PreparedStatement防SQL注入,过滤和转义用户输入抵御XSS攻击,添加令牌对抗CSRF,限制文件上传类型和大小以防止恶意文件,避免原生序列化并确保数据完整性。及时更新和修复漏洞是关键。程序员应遵循安全编程规范,保障系统安全。
568 2
|
JSON 监控 数据格式
Easy UI datagrid的学习
Easy UI datagrid的学习
234 0
|
算法 PHP
m根据给定系统传递函数自动绘制系统结构图matlab仿真,包括直接型,级联型以及并联型
m根据给定系统传递函数自动绘制系统结构图matlab仿真,包括直接型,级联型以及并联型
548 0
|
前端开发 JavaScript Go
深入探讨前后端之争:揭秘Go语言在未来全栈Web开发中的关键角色与价值
深入探讨前后端之争:揭秘Go语言在未来全栈Web开发中的关键角色与价值
292 0
|
SQL Java 数据库连接
mybatis多参数传递报错问题分析+硬核mybatis底层源码分析+@Param注解+图文实战环境分析【4500字详解打通,没有比这更详细的了!】(二)
mybatis多参数传递报错问题分析+硬核mybatis底层源码分析+@Param注解+图文实战环境分析【4500字详解打通,没有比这更详细的了!】
474 0