STL list hỗ trợ chèn ở đầu (push_front), cuối (push_back), và vị trí bất kỳ (insert sau khi di chuyển iterator).
Ví dụ
#include <iostream>
#include <list>
using namespace std;
void display(list<int> my_list) {
for (auto it = my_list.begin(); it != my_list.end(); ++it)
cout << *it << " ";
}
int main() {
int arr[] = {10, 41, 54, 20, 23, 69, 84, 75};
int n = sizeof(arr) / sizeof(arr[0]);
list<int> my_list;
for (int i = 0; i < n; i++)
my_list.push_back(arr[i]);
cout << "List before insertion: ";
display(my_list);
my_list.push_front(100); // chèn đầu
my_list.push_back(500); // chèn cuối
auto it = my_list.begin();
advance(it, 5); // dịch đến vị trí 5
my_list.insert(it, 1000); // chèn giữa
cout << "\nList after insertion: ";
display(my_list);
}
Kết quả
List before insertion: 10 41 54 20 23 69 84 75 List after insertion: 100 10 41 54 20 1000 23 69 84 75 500