#include "iostream"
#include "vector"
#include "list"
using namespace std;
int main()
{
list<int>la={8,2,6,4,5};
for (auto &val:la)
cout<<val<<" ";
cout<<endl;
la.reverse();//反转链表、
for ( auto &val:la)
cout<<val<<" ";
cout<<endl;
la.sort();
for ( auto &val:la)
cout<<val<<" ";
cout<<endl;
list<int>lb={3,7,9,10,1};
lb.sort();//链表排序
la.merge(lb);//归并链表。
for (auto &val:la)
cout<<val<<" ";
cout<<endl;
list<int>lc={8,2,6,4,5};
for (auto &val:lc)
cout<<val<<" ";
cout<<endl;
list<int>ld={3,7,9,10,1};
for (auto &val:ld)
cout<<val<<" ";
cout<<endl;
auto first=ld.begin();
first++;
auto last=ld.end();
last--;
lc.splice(lc.begin(),ld,first,last);
for (auto &val:lc)cout<<val<<" ";
cout<<endl;
cout<<"ld.size()="<<ld.size()<<endl;
for (auto &val:ld)
cout<<val<<" ";
cout<<endl;
list<int>lf={8,2,2,2,2,3,6,2,3,46,7,7,7,3,5};
for (auto &val:lf) cout<<val<<" ";
cout<<endl;
lf.remove(3);
for (auto &val:lf)
cout<<val<<" ";
cout<<endl;
lf.unique();//删除链表中相邻的重复元素,只保留一个
for (auto &val:lf) cout<<val<<" ";
cout<<endl;
}
输出:
8 2 6 4 5
5 4 6 2 8
2 4 5 6 8
1 2 3 4 5 6 7 8 9 10
8 2 6 4 5
3 7 9 10 1
7 9 10 8 2 6 4 5
ld.size()=2
3 1
8 2 2 2 2 3 6 2 3 46 7 7 7 3 5
8 2 2 2 2 6 2 46 7 7 7 5
8 2 6 2 46 7 5
发表回复