容器基础实践

1.顺序容器-deque

2.顺序容器-forward_list

3.顺序容器-list

4.迭代器

5.关联容器 map

6.联容器 set

#include <iostream>
#include <deque>
#include <forward_list>
#include <list>
#include <vector>
#include <map>
#include <string>
#include <set>



using namespace std;

/*
 * 1.顺序容器-deque
 * 2.顺序容器-forward_list
 * 3.顺序容器-list
 * 4.迭代器
 * 5.关联容器 map
 * 6.联容器 set
 * */

int main() {
    deque<int> de;
    de.push_back(10); //追加,增删改查
    de.push_back(20);
    de.push_back(30);
    de.push_front(40);
    auto postion = de.begin() + 2; //插入第2个元素前
    de.insert(postion,41);
    cout << de[0] << endl;
    cout << de[1] << endl;
    cout << "second="<< *de.begin()+1 << endl;
    cout << "first value="<< de.front() << endl;
    cout << "end value="<< de.back() << endl;
    cout << de.at(1) << endl;
    cout << "de长度"<< de.size() << endl;
    de[0] = 400;
    cout << de[0] << endl;

    for (int i = 0; i < de.size(); ++i) {
        cout << de[i] << endl;
    }
    de.pop_back();
    cout << de.size() << endl;

    forward_list<int> fl; //增,删,改查
    fl.push_front(11);
    fl.push_front(21);
    fl.insert_after(fl.begin(),31);
    // 不能修改
    for (auto f = fl.begin();f != fl.end();f++) {
        cout <<  *f <<endl;
    }
    fl.remove(11);

    list<int> li;  //新增,查询,修改,删除
    li.push_front(12);
    li.push_back(22);
    li.insert(li.end(),32);
    cout << li.front()<< endl;
    cout << li.back()<< endl;
    cout << "size="<< li.size() <<endl;
    *li.begin() = 322;
//    cout << li.front() <<endl;
    // 不能修改
    for (auto l = li.begin();l !=li.end();l++) {
        cout << *l<< endl;
    }
    li.remove(322);

    vector<int> vi{13,23,33,43,53};
    cout << *vi.begin() << endl;
    cout << *(vi.begin() + 1)<< endl;
    for(auto v = vi.begin();v != vi.end();v++){
        cout << *v << endl;
    }

    map<string,int> mp;  // 新增,修改,查询,删除
    mp.insert({"egg",10});
    mp.insert(make_pair("banana",20));
    mp.insert(pair<string,int>("orange",12));
    mp.insert({"egg",15});
    cout << mp["banana"] << endl;
    cout <<mp.at("egg") << endl;
    mp["orange"] = 122;
    cout << mp["orange"] << endl;
    mp.clear();
    cout << mp.size() << endl;

    set<int> st{1,2,3,4,5};
    st.insert(6);
    st.insert({7,8});
    // 不能修改
    st.empty();
    st.size();
    int cout1 = st.count(8);
    for(auto ss = st.begin();ss !=st.end();ss++ ){
        cout << *ss << endl;
    }
    st.erase(8);
    st.clear();























    return 0;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值