蓝桥杯快速上手 C++ STL

C++ STL


Vector

  • 向量,变长数组

  • 用于初始数组容量不确定的情况

  • 用邻接表实现图

一、使用方式

#include <vector>  
using namespace std;

vector<typename> name;

二、访问方式

  1. 下标访问
  2. 使用迭代器iterator 访问
#include <vector>  
using namespace std;


int main(){
   
    Vector<int> v;
	v.push();		//向数组中添加元素    
    ...
        
    //1.使用 下标访问
    for(int i = 0;i<v.size();i++){
   
        printf("%d",v[i]);
    }
    
    //2.使用 迭代器访问
    for(vertor(int)::iterator it = v.begin();it!=v.end();it++){
   
        printf("%d",*it);
    }
}

三、常用函数

函数名 函数作用 时间复杂度
push_back() 在容器尾部添加元素 O(1)
pop_back() 在容器尾部删除元素 O(1)
size() 获取数组容量 O(1)
clear() 清空数组 O(N)
insert(it,x) 在迭代器it位置添加x元素 O(N)
erase(it)
erase(first,last)
删除迭代器it位置的元素
删除 [first,last) 位置的元素
O(N)

Set

  • 集合

  • 内部自动有序

  • 自动去重

一、使用方式

#include<set>
using namespace std;

set<typename> name;

二、访问方式

  • 只支持 迭代器访问
#include<stdio.h>
#include<set>
using namespace std;

int main(){
   
    set<int> s;
    s.insert(12);   //添加元素
    ...
        
    for(set<int>:: iterator it = s.begin();it!=s.end();it++){
   
        printf
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值