C++的list是C++ STL(标准模板库)中的容器,它是一个双向链表,允许在容器的任意位置进行快速插入和删除操作。list的特点是它能够以O(1)的时间复杂度在容器的任意位置插入和删除节点。
使用list需要包含头文件,并且使用std命名空间。
以下是list的用法示例:
#include <iostream>
#include <list>
int main() {
// 创建一个空的list
std::list<int> myList;
// 在list末尾添加元素
myList.push_back(1);
myList.push_back(2);
myList.push_back(3);
// 在list开头插入元素
myList.push_front(0);
// 遍历list并打印元素
for (const auto& num : myList) {
std::cout << num << " ";
}
std::cout << std::endl;
// 在指定位置插入元素
auto it = std::find(myList.begin(), myList.end(), 2);
myList.insert(it, 10);
// 删除指定位置的元素
it = std::find(myList.begin(), myList.end(), 3);
myList.erase(it);
// 遍历list并打印元素
for (const auto& num : myList) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
以上示例中,首先创建了一个空的list。然后使用push_back函数在list末尾添加元素,使用push_front函数在list开头插入元素。接着通过遍历list打印出所有的元素。
示例中还演示了如何在指定位置插入元素,以及如何删除指定位置的元素。在插入和删除元素时,可以使用迭代器(iterator)来指定插入或删除的位置。
最后再次遍历list并打印出所有的元素,可以看到插入和删除操作的效果。