C++复习链表

链表list


 

  • 建立
  • 头文件<list>
  • list<string>l;
  • list<int>l(8,0);
  • vector<int>v;
  • list<int>l(v.begin(),v.end());
  • 操作
  • 插入
  • l.push_back(a);——在链表的后面添加元素
  • l.push_front(a);——在链表的前面添加元素
  • l.insert(l.begin()+2,1)——在第二个元素前插入1
  • l.insert(l.begin()+2,3,1)——在第二个元素前插入3个1
  • 删除
  • l.clear();——清空链表
  • l.pop_back();——删除最后一个元素
  • l.erase(l.begin()+1)——删除一个元素
  • l.erase(l.egin(),l.end())——删除一个范围内的元素
  • l.size();——返回链表大小
  • l.empty();——返回链表是否为空
  • 其他
  • l.front();——返回链表首
  • l.back();——返回链表尾
  • l.reverse();——反转链表
  • l.sort();——链表排序
  • l.swap(l2)——交换两个链表
  • 遍历
  • (1)迭代器遍历
  • for(auto it = l.begin();it != l.end();it++);
  • (2)auto遍历
  • for(auto i:l)
  • (3)for_each遍历
  • for_each(l.begin();l.end();Print);
  • 查找
  • count();
  • count_if();
  • find();
  • find_if();
  • search();      //详见STL通用算法

猜你喜欢

转载自www.cnblogs.com/Cmathe/p/12263239.html