首先要保证头文件<list>必须有,其次创建list,有好几种方法都可以
#include<iostream>
#include<list>//这个头文件时list链表所需的
using namespace std;
int main()
{
list<int> lt1;//创建一个空list表
list<double> lt2(10);
list<char> lt3(15,'*');
list<int> lt4(1,100);//创建一个元素值大于1小于100的空链表;
list<int>::iterator ii;//类似建立一个相同类型的指针
lt1.push_front(100);
lt1.push_back(10);
for(ii=lt1.begin();ii!=lt1.end();ii++)//lt1.begin()返回首值的选代器 lt1.end()返回末值选代器
{
cout<<*ii<<" ";
}
cout<<endl;
return 0;
}
接下来操作返回首元素值以及返回末值以及排序;以及在有序链表中插入值
#include<iostream>
#include<list>//这个头文件时list链表所需的
using namespace std;
int main()
{
list<int> lt1;//创建一个空list表
list<double> lt2(10);
list<int>::iterator ii;//类似建立一个相同类型的指针
lt1.push_front(100);
lt1.push_back(10);
for(int i=100;i<150;i=i+3)lt1.push_back(i);
int m=lt1.front();//返回首值;
int n=lt1.back();//返回末值;
cout<<m<<endl<<n<<endl;
lt1.sort();//排序
for(ii=lt1.begin();ii!=lt1.end();ii++)//lt1.begin()返回首值 lt1.end()返回末值
{
cout<<*ii<<" ";
}
cout<<endl;
cin>>n>>m;
int h1=0,h2=0;
for(ii=lt1.begin();ii!=lt1.end();ii++)
{
if(*ii>n&&h1==0)
{lt1.insert(ii,n);h1=1;}//在链表中直接插入;
if(*ii>m&&h2==0)
{lt1.insert(ii,m);h2=1;}
}
for(ii=lt1.begin();ii!=lt1.end();ii++)//lt1.begin()返回首值 lt1.end()返回末值
{
cout<<*ii<<" ";
}
cout<<endl;
return 0;
}