List容器

本文详细介绍了C++ STL中的List容器,它是一个双向链表,擅长于高效插入和删除元素。文章涵盖了List的基本操作,如构造、头尾添加移除、数据存取、迭代器使用、大小调整、插入与删除等,并提供了丰富的示例代码。
摘要由CSDN通过智能技术生成

List简介

  • list是一个双向链表容器,可高效地进行插入删除元素。
  • list不可以随机存取元素,所以不支持at.(pos)函数与[]操作符。It++(ok) it+5(err)
  • #include <list> 

 

list对象的默认构造

list采用采用模板类实现,对象的默认构造形式:list<T> lstT;  如:

list<int> lstInt;            //定义一个存放int的list容器。

list<float> lstFloat;     //定义一个存放float的list容器。

list<string> lstString;     //定义一个存放string的list容器。

...                                  

//尖括号内还可以设置指针类型或自定义类型。

list头尾的添加移除操作

  • list.push_back(elem);           //在容器尾部加入一个元素
  • list.pop_back();              //删除容器中最后一个元素
  • list.push_front(elem);     //在容器开头插入一个元素
  • list.pop_front();              //从容器开头移除第一个元素

 

        list<int> lstInt;

        lstInt.push_back(1);

        lstInt.push_back(3);

        lstInt.push_back(5);

        lstInt.push_back(7);

        lstInt.push_back(9);

        lstInt.pop_front();

        lstInt.pop_front();

        lstInt.push_front(11);

        lstInt.push_front(13);

        lstInt.pop_back();

        lstInt.pop_back();

// lstInt    {13,11,5}

list的数据存取

  • list.front();   //返回第一个元素。
  • list.back();  //返回最后一个元素。

 

list<int> lstInt;

        lstInt.push_back(1);

        lstInt.push_back(3);

        lstInt.push_back(5);

        lstInt.push_back(7);

        lstInt.push_back(9);

 

        int iFront = lstInt.front(); //1

        int iBack = lstInt.back();           //9

        lstInt.front() = 11;                    //11

        lstInt.back() = 19;                     //19

list与迭代器

  • list.begin();                     //返回容器中第一个元素的迭代器。
  • list.end();                       //返回容器中最后一个元素之后的迭代器。
  • list.rbegin();         //返回容器中倒数第一个元素的迭代器。
  • list.rend();       
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值