数据结构--008--STL容器List代码学习

直接撸代码:

#if 1
#include<iostream>
using namespace std;
#include<list>
int main()
{
	//区分和vector用法
	list<int>  list_test1;   //空链表
	list<int>  list_test2(5);//含5个元素默认值是0的链表
	list<int>  list_test3(5,2);//含5个元素默认值是2的链表
	list<int>  list_test4(list_test1);
	//list_test1[begin(), end()];
	list<int>  list_test5(list_test1.begin(), list_test1.end());
	list_test1.push_back(10);
	list_test1.push_back(20);
	list_test1.push_back(30);
	list_test1.push_back(40);
	list_test1.pop_back();
	//没有capacity()  reserve()
	//没有[]  at
	
	//reverse()翻转
	list_test1.reverse();//vector没有此成员函数
	//sort();
	list_test1.sort();//vector没有此成员函数

	//头部插入 删除
	list_test1.push_front(80);
	list_test1.push_front(90);
	list_test1.pop_front();
	//merge  合并两个有序链表并排序
	list_test1.clear();
	list_test2.clear();
	list_test1.push_back(3);
	list_test1.push_back(6);

	list_test2.push_back(2);
	list_test2.push_back(4);
	list_test1.merge(list_test2);

	//remove()  清除匹配所有元素
	list_test1.push_back(4);
	list_test1.push_back(4);
	list_test1.push_back(4);
	list_test1.remove(9);
	//remove_if()  清除满足条件的元素
	list_test1.remove_if([](int x){return x > 3; });
	//splice()
	//unique()   删除重复值
	list_test1.clear();
	list_test1.push_back(4);
	list_test1.push_back(4);
	list_test1.push_back(3);
	list_test1.push_back(3);
	list_test1.push_back(2);
	list_test1.push_back(2);
	list_test1.unique();
	return 0;
}
#endif//List学习

List学习只要简单的会对数据进行基本的增删查改就可以了,底层代码以后再带大家撸撸···············小妲己爱主人哦········

猜你喜欢

转载自blog.csdn.net/ly1716/article/details/90177589