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

deque ::at () và deque ::swap () trong C ++ STL

Trong bài viết này, chúng ta sẽ thảo luận về hàm deque ::at () và deque ::swap () trong cú pháp hàm STL C ++, cách làm việc và các giá trị trả về của nó.

Hàm deque ::at () và deque ::swap () trong STL là gì?

Hàng đợi Deque hoặc Double end như tên cho thấy, các vùng chứa trình tự có thể được mở rộng hoặc thu nhỏ ở cả hai đầu. Người dùng có thể dễ dàng chèn dữ liệu từ bất kỳ đầu nào và tương tự như vậy xóa dữ liệu từ bất kỳ đầu cuối nào. Chúng tương tự như vectơ, nhưng sự khác biệt duy nhất là không giống như vectơ, phân bổ lưu trữ liền kề có thể không được đảm bảo. Still Deque hiệu quả hơn trong trường hợp chèn và xóa các phần tử ở cả hai đầu.

deque ::at ()

Hàm at () được sử dụng để cung cấp tham chiếu đến phần tử hiện diện tại một vị trí cụ thể được cung cấp làm tham số cho hàm.

Cú pháp

dequename.at(position of element)

Tham số

Vị trí của phần tử

Giá trị trả lại

Tham chiếu trực tiếp đến phần tử ở vị trí đã cho.

Ví dụ

Input : adeque = 1, 3, 4, 5, 8
adeque.at(3);
Output : 5
Input : adeque = 1, 3, 5, 7,9
adeque.at(2);
Output : 5

Ví dụ

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> adeque;
   adeque.push_back(1);
   adeque.push_back(3);
   adeque.push_back(4);
   adeque.push_back(5);
   adeque.push_back(8);
   cout << adeque.at(3);
   return 0;
}

Đầu ra

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

5

deque ::swap ()

Hàm swap () được sử dụng để trao đổi hoặc hoán đổi các phần tử của hai deque cùng loại và cùng kích thước.

Cú pháp

Deque1name.swap(deque2name)

Tham số

Các tham số chứa tên của deque mà nội dung của deque1 phải được định hình.

Giá trị trả lại

Tất cả các phần tử của cả deque đều được hoán đổi hoặc hoán đổi cho nhau.

Ví dụ

Input : adeque = {1, 3, 4, 5, 8}
bdeque = {2, 6, 7, 9, 0}
adeque.swap(bdeque);
Output : adeque = {2, 6, 7, 9, 0}
bdeque = {1, 3, 4, 5, 8}

Ví dụ

#include <deque>
#include <iostream>
using namespace std;
int main(){
   // deque container declaration
   deque<int> adeque{ 1, 2, 3, 4 };
   deque<int> bdeque{ 3, 5, 7, 9 };
   // using swap() function to swap elements of deques
   adeque.swap(bdeque);
   // code for printing the elemets of adeque
   cout << "adeque = ";
   for (auto it = adeque.begin(); it < adeque.end(); ++it)
      cout << *it << " ";
   // code for printing the elemets of bdeque
   cout << endl
   << "bdeque = ";
   for (auto it = bdeque.begin(); it < bdeque.end(); ++it)
      cout << *it << " ";
   return 0;
}

Đầu ra

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

adeque = {2, 6, 7, 9, 0}
bdeque = {1, 3, 4, 5, 8}