list容器
  list容器,双向链表和vector,deque不同的地方在于他是非连续性,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表有一系列结点组成,结点包含了指针域,数据域, 
   采用动态存储分配 
   1、list构造函数 
   list<T> list;//list采用模板类实现 
   list(beg,end);//构造函数将[beg,end)区间中的元素拷贝给本身 
   list(n,elem);//构造函数将n个elem拷贝构造给本身 
   list(const list &lst);//拷贝构造函数 
   2、list数据元素插入和删除操作 
   push_back(elem);//在容器尾部加入一个元素 
   pop_back();//删除容器中最后一个元素 
   push_front(elem);//在容器开头插入一个元素 
   pop_front();//从容器开头移除一个元素 
   insert(pos,elem);//在pos位置插elem元素的拷贝,返回新数据的位置 
   insert(pos,n,elem);//在pos位置插入n个elem数据,无返回值。 
   insert(pos,beg,end);//在pos位置插入[beg,end)区间的数据,无返回值  
   clear();  
   erase(beg,end);//删除区间[beg,end)的数据,返回下一个数据的位置;  
   erase(pos);//删除pos位置的数据,返回下一个数据的位置  
   remove(elem);//删除容器中所有与elem相匹配的元素  
   3、list的大小操作 
   size(); 
   empty(); 
   resize(num);//重新定义容器的长度为num 
   resize(num,elem);//重新定义容器的长度为num,若容器变长,则以默认值填充新位置,若容器变短,则末尾超出容器长度的元素被删除 
   4、list赋值操作 
   assign(beg,end);//将[beg,end)区间中的数据拷贝赋值给本身  
   assign(n,elem);//将n个元素拷贝赋值给本身  
   list& oeprator=(const list &lst);//重载等号操作符  
   swap(list);//将list与本身元素互换  
   5、list数据的存取  
   front();//返回第一个元素  
   back();//返回最后一元素  
   6、list反转排列排序 
   reverse();//反转链表 
   sort();//list排序 
 查看14道真题和解析
查看14道真题和解析

 vivo公司福利 364人发布
vivo公司福利 364人发布