C++之链表list

1. 双向链表list *

1.1 list的基本特性

        C++的list是一种双链表,这意味着每个元素都有一个指向前一个和后一个元素的指针。相比于单链表,双链表在插入和删除操作中更为高效,因为它不需要遍历链表来找到插入或删除的位置。

        list支持常见的序列操作,如添加元素(push_front, push_back),删除元素(erase),查找元素(find),访问元素(front, back)等。同时,list还支持一些更高级的操作,如合并(splice),排序(sort),反转(reverse)等。

1.2 list的代码使用例程

#include <iostream>  
#include <list>  

using namespace std;  
list<int> my_list; // 创建一个整数类型的链表  
  
     
my_list.push_back(1);   // 添加元素
  
  
// 删除元素  
my_list.pop_back(); // 删除末尾元素  
my_list.pop_front(); // 删除头部元素  
my_list.erase(2); // 删除指定元素  
  
// 查找元素  
auto it = my_list.find(1); // 在链表中查找元素1,返回指向它的迭代器  
if (it != my_list.end()) { // 如果找到了元素1  
        std::cout << "Found: " << *it << std::endl; // 输出:Found: 1 } 
  
  

1.3 list的用法总结(表格)

函数名 描述
push_back() 在链表末尾添加元素
push_front() 在链表头部添加元素
pop_back() 删除链表末尾的元素
pop_front() 删除链表头部的元素
erase() 删除链表中的指定元素
insert() 在链表中指定位置插入元素
splice() 将两个链表连接起来
sort() 对链表进行排序
reverse() 反转链表的顺序
find() 在链表中查找元素
front() 获取链表的第一个元素
back() 获取链表的最后一个元素
empty() 检查链表是否为空
size() 获取链表的长度

相关推荐

  1. C++list

    2023-12-07 08:22:07       29 阅读
  2. C++容器(std::list)

    2023-12-07 08:22:07       9 阅读
  3. C++ Lists)基本用法

    2023-12-07 08:22:07       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-07 08:22:07       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-07 08:22:07       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-07 08:22:07       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-07 08:22:07       20 阅读

热门阅读

  1. Flink基础之DataStream API

    2023-12-07 08:22:07       32 阅读
  2. Android App-targetSDKVersion28升级为30

    2023-12-07 08:22:07       37 阅读
  3. Python大数据之Python进阶(六)多线程的使用

    2023-12-07 08:22:07       41 阅读
  4. BACKUP OPTIMIZATION OFF 确保rman备份含有所有文件

    2023-12-07 08:22:07       28 阅读
  5. ES6中的Promise

    2023-12-07 08:22:07       43 阅读
  6. ChatGPT发展历程

    2023-12-07 08:22:07       73 阅读
  7. 损失函数(目标函数)

    2023-12-07 08:22:07       40 阅读
  8. vue3版本学习

    2023-12-07 08:22:07       34 阅读
  9. vscode 安装插件

    2023-12-07 08:22:07       41 阅读