博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++标准库中,含有链表的类list
阅读量:5318 次
发布时间:2019-06-14

本文共 2304 字,大约阅读时间需要 7 分钟。

Lists将元素按顺序储存在链表中. 与 向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢.STL中 end()指向的总是无效值,取值都用迭代器,用法跟指针差不多。assign() 给list赋值 back() 返回最后一个元素 begin() 返回指向第一个元素的迭代器 clear() 删除所有元素 empty() 如果list是空的则返回true end() 返回末尾的迭代器 erase() 删除一个元素 front() 返回第一个元素 get_allocator() 返回list的配置器 insert() 插入一个元素到list中 max_size() 返回list能容纳的最大元素数量 merge() 合并两个list pop_back() 删除最后一个元素 pop_front() 删除第一个元素 push_back() 在list的末尾添加一个元素 push_front() 在list的头部添加一个元素 rbegin() 返回指向第一个元素的逆向迭代器 remove() 从list删除元素 remove_if() 按指定条件删除元素 rend() 指向list末尾的逆向迭代器 resize() 改变list的大小 reverse() 把list的元素倒转 size() 返回list中的元素个数 sort() 给list排序 splice() 合并两个list swap() 交换两个list unique() 删除list中重复的元素附List用法实例:#include 
#include
#include
#include
using namespace std;//创建一个list容器的实例LISTINTtypedef list
LISTINT;//创建一个list容器的实例LISTCHARtypedef list
LISTCHAR;void main(void){ //-------------------------- //用list容器处理整型数据 //-------------------------- //用LISTINT创建一个名为listOne的list对象 LISTINT listOne; //声明i为迭代器 LISTINT::iterator i; //从前面向listOne容器中添加数据 listOne.push_front (2); listOne.push_front (1); //从后面向listOne容器中添加数据 listOne.push_back (3); listOne.push_back (4);//从前向后显示listOne中的数据 cout<<"listOne.begin()--- listOne.end():"<
#include
using namespace std;typedef list
INTLIST;//从前向后显示list队列的全部元素void put_list(INTLIST list, char *name){ INTLIST::iterator plist; cout << "The contents of " << name << " : "; for(plist = list.begin(); plist != list.end(); plist++) cout << *plist << " "; cout<
list3: "<<(list1>list3)<
#include
#include
using namespace std;class example{public: example(int val) { i = val; }bool operator==(example const & rhs){ return (i == rhs.i) ? true : false;}private:int i;};int main(void){ vector
ve; ve.push_back(1); //若这里为压入2,则程序运行就会奔溃,因为迭代器指针it未指向任何有 //效的地址!!! vector
::iterator it; example elem(1); //定义类对象elem it = find(ve.begin(), ve.end(), elem); cout<
<<(*it == elem); //输出 true}#include
#include
#include
#include
using namespace std;typedef list
LISTINT;int main(void){ int a[5] = { 1,5,3,5,6}; LISTINT ls1; ls1.assign(a,a+5); LISTINT::iterator it; for( it=ls1.begin(); it!=ls1.end(); it++) cout<<*it<<" "; cout<

 

转载于:https://www.cnblogs.com/renyuan/archive/2013/05/21/3091524.html

你可能感兴趣的文章
【题解】 bzoj1597: [Usaco2008 Mar]土地购买 (动态规划+斜率优化)
查看>>
css文本溢出显示省略号
查看>>
git安装和简单配置
查看>>
面向对象:反射,双下方法
查看>>
鼠标悬停提示文本消息最简单的做法
查看>>
课后作业-阅读任务-阅读提问-2
查看>>
面向对象设计中private,public,protected的访问控制原则及静态代码块的初始化顺序...
查看>>
fat32转ntfs ,Win7系统提示对于目标文件系统文件过大解决教程
查看>>
Awesome Adb——一份超全超详细的 ADB 用法大全
查看>>
shell cat 合并文件,合并数据库sql文件
查看>>
Android 将drawable下的图片转换成bitmap、Drawable
查看>>
介绍Win7 win8 上Java环境的配置
查看>>
移动、联通和电信,哪家的宽带好,看完你就知道该怎么选了!
查看>>
Linux设置环境变量的方法
查看>>
Atitit.进程管理常用api
查看>>
构建自己的项目管理方案
查看>>
利用pca分析fmri的生理噪声
查看>>
div水平居中且垂直居中
查看>>
epoll使用具体解释(精髓)
查看>>
AndroidArchitecture
查看>>