zoukankan      html  css  js  c++  java
  • STL容器

    顺序容器:向量vector、列表list、队列deque

    关联容器:集合map、映射set、多重集合multimap、多重映射multiset

    容器适配器:栈stack、队列queue、优先队列priority_queue

     


    队列

        queue<int>q;
        q.back();
        q.front();
        q.push(x);
        q.empty();
        q.pop();
        q.size();
    View Code

        stack<int>s;
        s.top();
        s.push(x);
        s.size();
        s.empty();
        s.pop();
    View Code

    vector

        初始化
        vector<int>a; //默认为空
        vector<int>b(a); //复制 
        vector<int>a(10); //10个0 
        vector<int>a(10,1); //10个大小为1 
        vector<int>b(a.begin(),a.begin()+3);
        vector<string>a(10,"null");
        
        也可以用数组来初始化
        int n[]={1,2,3,4};
        vector<int>a(n,n+4);
        
        基本操作
        vector<int>v;
        v.size();
        v.begin();
        v.end();
        v.erase(pos);
        v.clear();
        v.push_back(x);
        v.pop_back();
        v.insert(pos,x);
        v.front();
        v.back();
        v.empty();
        
        a.insert(a.begin(),1000);//开头插入1000
        a.insert(a.begin(),3,1000); //3个1000
        b.insert(b.begin(),a.begin(),a.end()); //将范围a插入b
        
        a.erase(a.begin());
        a.erase(a.begin(),a.begin()+3);
        
        b.swap(a);
        reverse(a.begin(),a.end()); //元素翻转 
        
        find(a.begin(),a.end(),num);
        //找的到返回下标 找不到返回a.end();
        
        遍历
        cin输入 cout<<a[i]访问
        vector<int>::iterator it;
        for(it=a.begin();it!=a.end();it++) cout<<*it;
        int len=a.size();
        for(int i=0;i<len;i++) cout<<a[i];
    View Code

    map

        map<int,string>m;
        m.sert(pair<int,string>(1,"name") ); //不可覆盖
        m[1]="name"; //可覆盖
        if(m.find(key)!=m.end()) cout<<"find"<<endl;
        
        map<int,string>::iterator iter;
        for(iter=m.begin();iter!=m.end();iter++) 
        cout<<iter->first<<' '<<iter->second<<endl;
        
        iter=m.find(key);
        m.erase(iter);
        
        m.clear();
        m.swap();
        m.count();
        m.empty();
    View Code

    string类

        string类
        string s;
        string s(str); 生成str的复制品
        string s(str,pos); 从str始于pos位置开始
        string s(str,pos,len);
        char t[200];
        string s(t);
        string s(t,len); t的前len个
    
        string s(num,'c'); num个c
        string s(t.begin(),t.end());
    
        s.swap()
        s.insert()
        s.erase()
        s.clear()
        s.replace()
        s.size()
        s.length()
        s.empty()
        s.reserve()
    View Code
  • 相关阅读:
    linux 下 设置 MySQL8 表名大小写不敏感方法,解决设置后无法启动 MySQL 服务的问题
    JavaWeb入门_模仿天猫整站Tmall_JavaEE实践项目
    flowable工作流笔记
    bladex前端反向代理(解决跨域)
    Long类型传值前端精度丢失
    blade普通字典关联
    一些东西
    java面试题经典解读
    html元素定位原理
    行转换为列
  • 原文地址:https://www.cnblogs.com/iwomeng/p/10857483.html
Copyright © 2011-2022 走看看