zoukankan      html  css  js  c++  java
  • STL的基本使用方法

    C++STL

    sort

    sort( begin, end, cmp),将begin -> end 按照cmp规则排列

    lower_bound

    lower_bound(begin, end, a),在begin -> end的序列中查找第一个大于等于a的位置。

    vector

    vector不定长数组,有以下的几种用法

    #include<vector>
    vector<int> a;
    int insert,resize;
    a.push_back(insert);//向尾部插入元素
    a.pop_back();//删除尾元素
    a.size();//返回大小
    a.resize(resize);//重新设定大小
    a[i];//可以像数组一样直接访问
    
    

    set

    set集合,类似于数学中的集合,每个数字只会出现一次,可以用于去重。有以下几种用法

    #include<set>
    set<int> a;
    int insert,size;
    a.insert(insert);//插入元素
    a.begin();//首元素
    a.end();//尾元素
    

    对于set的遍历,有以下方法:

    for(set<int>::iterator it=a.begin;it!=a.end;i++)
        cout<<*it<<endl;//元素已经从小到大排好
    

    map

    map映射,从key到value进行映射,例如:map<string, int>month_name 就可以用,month_name["July"]=7进行赋值

    stack

    stack栈,有以下几种用法:

    #include<stack>
    stack<int> a;
    int insert;
    a.push(insert);//插入元素
    a.top();//顶元素
    a.pop();//取出顶元素
    

    queue

    queue队列,有以下几种用法:

    #include<queue>
    queue<int> a;
    int insert;
    a.push(insert);//插入元素
    a.top();//顶元素
    a.front();//取出顶元素
    

    优先队列(堆)

    int insert;
    priority_queue<int> a;//大堆
    priority_queue<int, vector<int>, greater<int> >a;//小堆
    
    //具体用法
    a.push(insert);//插入元素
    a.top();//堆顶元素
    a.pop();//取出堆顶元素
    

  • 相关阅读:
    mysql 行号
    java 异常链
    springsecurity密码加密
    java 四舍五入
    ArrayList的使用及原理
    java 匿名内部类
    java 克隆
    logback的配置
    信号量 Semaphore
    障碍器 CyclicBarrier
  • 原文地址:https://www.cnblogs.com/Douglas-Zhou/p/STL-using.html
Copyright © 2011-2022 走看看