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

forward_list ::push_front () và forward_list ::pop_front () trong C ++ STL

Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và ví dụ của các hàm forward_list ::push_front () và forward_list ::pop_front () trong C ++.

Forward_list trong STL là gì?

Danh sách chuyển tiếp là các vùng chứa trình tự cho phép các thao tác chèn và xóa theo thời gian không đổi ở bất kỳ đâu trong chuỗi. Danh sách chuyển tiếp được triển khai dưới dạng danh sách được liên kết đơn lẻ. Thứ tự được lưu giữ bởi liên kết đối với mỗi phần tử của một liên kết đến phần tử tiếp theo trong chuỗi.

forward_list ::push_front () là gì?

forward_list::push_front() is an inbuilt function in C++ STL which is declared in
header file. push_front() is used to push/insert an element or a value in the front or at the
beginnig of the forward_list. When we use this function the first element which is already in the
container becomes the second, and the element pushed becomes the first element of the
forward_list container and the size of the container is increased by 1.

Cú pháp

flist_container1.push_front (const value_type& value );

Hàm này chỉ có thể chấp nhận một tham số, tức là giá trị sẽ được chèn vào lúc đầu.

Giá trị trả lại

Hàm này không trả về gì.

push_front ()

Ví dụ

Trong đoạn mã dưới đây, chúng tôi đang chèn phần tử vào đầu danh sách bằng thao tác push_front () và sau đó, chúng tôi sử dụng hàm sort () để sắp xếp các phần tử trong danh sách.

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> forwardList = {12, 21, 22, 24};
   //inserting element in the front of a list using push_front() function
   forwardList.push_front(78);
   cout<<"Forward List contains: ";
   for (auto i = forwardList.begin(); i != forwardList.end(); ++i)
      cout << ' ' << *i;
   //list after applying sort operation
   forwardList.sort();
   cout<<"\nForward List after performing sort operation : ";
   for (auto i = forwardList.begin(); i != forwardList.end(); ++i)
      cout << ' ' << *i;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau

Forward List contains: 78 12 21 22 24
Forward List after performing sort operation : 12 21 22 24 78

forward_list ::pop_front () là gì?

forward_list ::pop_front () là một hàm có sẵn trong C ++ STL được khai báo trong tệp tiêu đề . pop_front () được sử dụng để bật / xóa phần tử nằm ở phần đầu của danh sách chuyển tiếp. Khi chúng ta sử dụng hàm này, phần tử đầu tiên đã có trong vùng chứa sẽ bị xóa và phần tử tiếp theo của phần tử đầu tiên trở thành phần tử đầu tiên của vùng chứa forward_list và kích thước của vùng chứa giảm đi 1.

Cú pháp

flist_container1.pop_front ();

Hàm này không chấp nhận tham số

Giá trị trả lại

Hàm này không trả về gì.

pop_front ()

Ví dụ

Trong đoạn mã dưới đây, chúng tôi sẽ xóa phần tử đầu tiên của danh sách bằng thao tác pop_front () được đặt trước trong C ++ STL.

#include <forward_list>
#include <iostream>
using namespace std;
int main(){
   forward_list<int> forwardList = {10, 20, 30 };
   //List before applying pop operation
   cout<<"list before applying pop operation : ";
   for(auto i = forwardList.begin(); i != forwardList.end(); ++i)
      cout << ' ' << *i;
   //List after applying pop operation
   cout<<"\nlist after applying pop operation : ";
   forwardList.pop_front();
   for (auto j = forwardList.begin(); j != forwardList.end(); ++j)
      cout << ' ' << *j;
}

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau

list before applying pop operation : 10 20 30
list after applying pop operation : 20 30