STL之list

2020-04-30 16:00:42来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

STL之list

list即双向链表。

#include<iostream>
#include<list>
using namespace std;

int main()
{
    //构造
    list<int> li;

    //插入元素
    //头插
    li.emplace_front(2);
    //尾插
    li.emplace_back(8);
    //指定位置插入
    li.insert(++li.begin(), 6);

    //遍历
    for (list<int>::iterator it = li.begin(); it != li.end(); it++)
        cout << *it;
    cout << endl;
    //输出:268

    //排序,不能使用头文件algorithm中的sort算法,使用list模板自定义的sort方法
    li.sort(greater<int>()); //从大到小排序
    for (list<int>::iterator it = li.begin(); it != li.end(); it++)
        cout << *it;
    cout << endl;
    //输出:862

    li.emplace_back(2);
    li.emplace_back(6);
    li.emplace_back(8);

    //删除元素
    //删除指定位置元素
    li.erase(++li.begin()); //删除第二个元素'6'
    for (list<int>::iterator it = li.begin(); it != li.end(); it++)
        cout << *it;
    cout << endl;
    //输出:82268

    //删除指定元素
    li.remove(8); //删除元素'8'
    for (list<int>::iterator it = li.begin(); it != li.end(); it++)
        cout << *it;
    cout << endl;
    //输出:226

    //删除连续的重复元素,只保留其中一个
    li.unique(); //删除连续的重复元素'2',只保留其中一个
    for (list<int>::iterator it = li.begin(); it != li.end(); it++)
        cout << *it;
    cout << endl;
    //输出:26

    return 0;
}

原文链接:https://www.cnblogs.com/love-ziji/p/12798008.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:纯虚函数与基类指针数组的运用 代码参考

下一篇:透彻理解C++11新特性:右值引用、std::move、std::forward