list容器的用法

list容器:

        list是一种序列式容器,list的每个节点有3个域:前驱元素指针域、数据域和后继元素指针域,这就构成了双向循环链,list元素节点并不要求在一段连续的内存中,不支持快速随机存取;

使用命令:

        list():声明一个空列表;

        list(n):声明一个有n个元素的列表,每个元素都由其默认构造函数构造出来;

        list(n,val):声明一个由n个元素的列表,每个元素的值都是val;

        list list1(10,0):创建长度为10,每个元素的值都为0;

        list.push_back(): 从list的末端插入;

        list.push_front():从list的头部插入;

        list.empty():判断是否为空;

        list.resize():将list的长度改为只容纳n个元素 ,超出的元素将被删除;

        list.clear():清空list中的所有元素;

        list.front()/back():获取list容器中的头部元素/最后一个元素;若是list为空,

将会发生错误;

        list.pop_back()/pop_front():删除最后一个元素/删除第一个元素;若是list为

空,则程序会崩掉;

        list1.swap(list2)/swap(list1,list2): 交换两个链表;

        reverse(list): list的翻转;

        list1.merge(list2,greater()):合并两个链表并使之默认升序;

        list.insert():在指定位置插入一个或者多个元素;

        list.insert(list.begin(),100):在开始的位置插入100;

        list.insert(list.begin(),2,200):在开始的位置插入2个200;

        list.insert(list.begin(),list1.begin(),list1.end()):在list的开始位置插入

        list1的从开始到结束所有位置的元素。

        list.erase(list.begin()):删除list第一个元素;

        list.erase(list.begin(),list.end()):将list从begin()到end()之间的元素删除;

你可能感兴趣的:(c++,linux环境,编译问题,链表,数据结构)