21xrx.com
2024-11-22 07:59:29 Friday
登录
文章检索 我的文章 写文章
C++中的链表(list)方法
2023-07-04 19:14:30 深夜i     --     --
C++ 链表 list 插入 删除

C++中的链表是一种数据结构,它提供了一种动态存储数据的方式,可以在没有预先确定数组大小的情况下存储任意数量的元素。C++标准库提供了一个名为list的容器类,它实现了一个双向链表。本文将介绍如何使用list类。

创建一个list对象

要使用list类,需要包含list头文件。创建一个空的list对象很简单,只需调用其默认构造函数:


#include <list>

using namespace std;

list<int> mylist; //创建一个空的list对象

在创建list对象时,需要指定元素的类型,如上面的例子中指定为int类型。

向list中添加元素

可以使用list类提供的push_back和push_front方法将元素添加到list中。push_back方法将元素添加到list的末尾,push_front方法将元素添加到list的开头。


mylist.push_back(10); //10添加到list末尾

mylist.push_front(20); //20添加到list开头

访问list中的元素

可以使用list类提供的迭代器来遍历list中的元素,并使用*运算符访问元素的值。list还提供了front和back方法,分别用于访问list的第一个元素和最后一个元素。


list<int>::iterator it;

for (it = mylist.begin(); it != mylist.end(); ++it)

 cout << *it << " "; //输出list中的所有元素

cout << endl << "The first element is: " << mylist.front();

cout << endl << "The last element is: " << mylist.back();

从list中删除元素

可以使用list类提供的pop_back和pop_front方法删除list中的元素。pop_back方法用于删除list的最后一个元素,pop_front方法用于删除list的第一个元素。


mylist.pop_back(); //删除list最后一个元素

mylist.pop_front(); //删除list第一个元素

除了pop_back和pop_front方法,还可以使用erase方法删除list中的元素。例如,可以使用迭代器指定要删除的元素,并将其传递给erase方法。


list<int>::iterator it = mylist.begin();

++it;

mylist.erase(it); //删除list中的第二个元素

总结

本文介绍了如何使用C++中的list类来操作链表。list类提供了很多有用的方法,例如在链表的开头和末尾添加元素,访问链表中的元素,以及从链表中删除元素。熟练掌握list的使用方法,可以提高程序的效率,并减少出错的可能性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复