可以在前边,后边,中间 插入数据
- 实例化std::list 对象
- 在list开头插入元素
- 在list末尾插入元素
- 在list中间插入元素
- 删除list中的元素
- 对list中元素进行反转和排序
插入元素:
#include <iostream>
#include <list>
using namespace std;
void PrintListContents(const list<int>& listInput);
int main()
{
list<int> a;
list<int> b;
std::list<int>::iterator iter;
b.push_back(100);
b.push_back(200);
b.push_back(300);
b.push_back(400);
b.push_back(500);
PrintListContents(b);
cout <<endl;
a.push_front(4);
a.push_front(3);
a.push_front(2);
a.push_front(1);
a.push_back(5);
iter = a.begin();
++iter;
a.insert(iter,10);
//a.insert((iter+1),11);
a.insert(a.end(),4,20);
a.insert(a.begin(),b.begin(),b.end());
PrintListContents(a);
cout << "Hello world!" << endl;
return 0;
}
void PrintListContents(const list<int>& listInput)
{
std::list<int>::const_iterator iter;
for(iter = listInput.begin();iter!= listInput.end();++iter)
cout<< *iter <<endl;
}
删除list中的元素:
#include <iostream>
#include<list>
using namespace std;
void PrintListContents(const list<int>& listInput);
int main()
{
std::list<int> a;
a.push_front(4);
a.push_front(3);
list<int>::iterator iElementValueTwo;
iElementValueTwo = a.insert(a.begin(),2);//放一个数据,返回该数据的位置
a.push_front(1);
a.push_front(0);
PrintListContents(a);
cout <<endl;
a.erase(a.begin(),iElementValueTwo);
PrintListContents(a);
a.erase(iElementValueTwo,a.end());
PrintListContents(a);
return 0;
}
void PrintListContents(const list<int>& listInput)
{
cout << "{";
std::list<int>::const_iterator iter;
for(iter = listInput.begin();iter!= listInput.end();++iter)
cout<< *iter <<" ";
cout << "}"<<endl;
}
LIST的反转与排序:
#include<iostream>
#include<list>
using namespace std;
void PrintListContents(const list<int>& listInput);
int main()
{
std::list<int> a;
a.push_front(4);
a.push_front(9);
a.push_front(1);
a.push_front(34);
a.push_front(13);
PrintListContents(a);
a.reverse();
PrintListContents(a);
a.sort();
PrintListContents(a);
return 0;
}
void PrintListContents(const list<int>& listInput)
{
cout << "{";
std::list<int>::const_iterator iter;
for(iter = listInput.begin();iter!= listInput.end();++iter)
cout<< *iter <<" ";
cout << "}"<<endl;
}