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

Liệt kê hàm đảo ngược 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à các ví dụ của hàm list ::reverse () trong C ++.

Danh sách trong STL là gì

Danh sách là một cấu trúc dữ liệu cho phép chèn và xóa theo thời gian liên tục ở bất kỳ đâu theo trình tự. Danh sách được triển khai dưới dạng danh sách được liên kết kép. Danh sách cho phép phân bổ bộ nhớ không liền kề. Danh sách thực hiện trích xuất chèn và di chuyển phần tử ở bất kỳ vị trí nào trong vùng chứa tốt hơn so với mảng, vectơ và deque. Trong Danh sách, truy cập trực tiếp vào phần tử chậm và danh sách tương tự như forward_list, nhưng các đối tượng danh sách chuyển tiếp là danh sách được liên kết đơn và chúng chỉ có thể được lặp lại về phía trước.

list ::reverse ()

là gì

list ::reverse () là một hàm có sẵn trong C ++ STL được khai báo trong tệp tiêu đề. reverse () được sử dụng để đảo ngược vùng chứa danh sách, có nghĩa là phần tử cuối cùng của danh sách trở thành phần tử đầu tiên của danh sách.

Dưới đây là biểu diễn đồ họa của danh sách và dạng đảo ngược của nó -

Liệt kê hàm đảo ngược trong C ++ STL

Cú pháp

List_name.reverse();

Hàm này không chấp nhận bất kỳ tham số nào.

Giá trị trả lại

Hàm này không trả về gì. Nó sẽ chỉ đảo ngược vùng chứa mà danh sách của nó sẽ được đảo ngược.

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main(){
   //create a list
   list<int> myList;
   //inserting elements to the list
   myList.push_back(1);
   myList.push_back(2);
   myList.push_back(3);
   myList.push_back(4);
   //list before appyling reverse() function
   cout<<"List : ";
   for (auto i = myList.begin(); i != myList.end(); i++)
      cout << *i << " ";
   //reversing the list
   myList.reverse();
   cout<<"\nList after appyling reverse() : ";
   for (auto i = myList.begin(); i != myList.end(); i++)
      cout << *i << " ";
   return 0;
}

Đầu ra

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

List : 1 2 3 4
List after applying reverse(): 4 3 2 1