Computer >> Máy Tính >  >> Lập trình >> C ++

Làm thế nào để chèn các phần tử trong C ++ STL List?

Giả sử chúng ta có một danh sách STL trong C ++. Có ít phần tử. Chúng ta phải chèn một phần tử mới vào danh sách. Chúng ta có thể chèn vào cuối, đầu hoặc ở bất kỳ vị trí nào. Hãy cho chúng tôi xem một đoạn mã để hiểu rõ hơn. Để chèn vào đầu chúng ta sẽ sử dụng push_front (), để chèn vào cuối chúng ta sẽ sử dụng push_end () và để chèn vào vị trí nào thì chúng ta phải sử dụng một số thao tác. chúng ta phải khởi tạo một trình vòng lặp, sau đó di chuyển trình vòng lặp đó đến đúng vị trí, sau đó chèn vào vị trí đó bằng cách sử dụng phương thức insert ().

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);
   //insert 100 at front
   my_list.push_front(100);
   //insert 500 at back
   my_list.push_back(500);
   //insert 1000 at index 5
   list<int>::iterator it = my_list.begin();
   advance(it, 5);
   my_list.insert(it, 1000);
   cout << "\nList after insertion: ";
   display(my_list);
}

Đầu ra

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