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

deque_emplace trong C ++ trong STL

Given là nhiệm vụ để hiển thị chức năng của hàm Deque emplace () trong C ++ STL

Deque là gì?

Deque là Hàng đợi kết thúc kép là các vùng chứa trình tự cung cấp chức năng mở rộng và thu hẹp ở cả hai đầu. Một cấu trúc dữ liệu hàng đợi cho phép người dùng chỉ chèn dữ liệu ở vị trí KẾT THÚC và xóa dữ liệu khỏi ô TRƯỚC. Hãy lấy sự tương tự của hàng đợi tại các điểm dừng xe buýt nơi người đó có thể được chèn vào hàng đợi chỉ từ END và người đứng ở FRONT là người đầu tiên bị loại bỏ trong khi trong hàng đợi Double end, việc chèn và xóa dữ liệu có thể thực hiện được ở cả hai kết thúc.

Hàm emplace () là gì?

Hàm emplace () sẽ chèn phần tử mới trước vị trí được chỉ định trong deque và tăng deque theo kích thước của phần tử.

Cú pháp

iterator emplace(const_iterator position, value_type value);

Tham số

Vị trí - Nó xác định vị trí trong vùng chứa nơi phần tử mới được chèn vào.

Giá trị - Nó cũng xác định giá trị hoặc đối số mới sẽ được chèn vào vùng chứa.

Giá trị trả lại - Nó trả về một trình lặp trỏ đến phần tử mới được chèn vào deque.

Ví dụ

Đầu vào Deque - 96 97 98 100

Đầu ra Deque mới sau khi chèn phần tử mới - 96 97 98 99 100

Đầu vào Deque - C P T A I N

Đầu ra Deque mới sau khi chèn phần tử mới - C A P T A I N

Có thể tuân theo phương pháp tiếp cận

  • Đầu tiên, chúng tôi khai báo deque.

  • Sau đó, chúng tôi in deque.

  • Sau đó, chúng tôi xác định hàm emplace ().

  • Sau đó, chúng tôi in deque mới sau khi chèn phần tử mới.

Bằng cách sử dụng phương pháp trên, chúng ta có thể nhập phần tử mới vào deque. Trong khi xác định hàm emplace (), chúng tôi cũng xác định vị trí và chúng tôi cũng xác định giá trị mới sẽ được chèn vào deque.

Ví dụ

// C++ code to demonstrate the working of deque emplace( ) function
#include<iostream.h>
#include<deque.h>
Using namespace std;
int main ( ){
   // initializing the deque
   Deque<int> deque = { 85, 87, 88, 89, 90 };
   // print the deque
   cout<< “ Deque: “;
   for( auto x = deque.begin( ); x != deque.end( ); ++x)
   cout<< *x << “ “;
   deque<int> iterator x;
   // defining the emplace( ) function
   deque.emplace(deque.emplace( ) + 1, 85);
   // printing deque after inserting new element
   cout<< “ New Deque:”;
   for( x = deque.begin( ) ; x != deque.end( ); ++x)
      cout<< “ “ <<*x;
   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

Input - Deque: 85 87 88 89 90
Output - New Deque: 85 86 87 88 89 90

Ví dụ

// C++ code to demonstrate the working of deque emplace( ) function
#include<iostream.h>
#include<deque.h>
Using namespace std;
int main( ){
   // initializing deque
   deque<char> deque ={ ‘L’ , ‘A’ , ‘C’ , ‘K’ };
   cout<< “ Deque: “;
   for( auto x = deque.begin( ); x != deque.end( ); ++x)
   cout<< *x << “ “;
   deque<int> iterator x;
   // defining the emplace( ) function
   deque.emplace(deque.emplace( ) , ‘B’)
   // printing deque in after inserting new element
   cout<< “ New deque:”;
   for( auto x = deque.begin( ) ; x >= deque.end( ); ++x)
      cout<< “ “ <<*x;
   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

Input – Deque: L A C K
Output – New Deque : B L A C K