Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฟังก์ชัน deque::emplace_front() และ deque::emplace_back() ใน C++ STL


งานนี้เป็นการแสดงฟังก์ชันการทำงานของ deque::emplace_front() และ deque::emplace_back() ใน C++ STL

Deque คืออะไร

Deque หรือ Double Ended Queues เป็นคอนเทนเนอร์ลำดับที่ให้ฟังก์ชันการขยายและหดตัวได้ทั้งสองข้าง คิวโครงสร้างข้อมูลทั่วไปอนุญาตให้แทรกข้อมูลเฉพาะที่ท้ายและลบข้อมูลจากหน้าเท่านั้น การเปรียบเทียบกับคิวที่ป้ายรถเมล์ ที่คนสามารถแทรกเข้าคิวได้เฉพาะท้าย และคนหน้าสุดจะออกก่อน ส่วน deque แทรกและลบได้ทั้งสองข้าง

emplace_front() คืออะไร

ฟังก์ชัน emplace_front() แทรกองค์ประกอบใหม่ที่หน้าของ deque

ไวยากรณ์

deque_name.emplace_front(value)

พารามิเตอร์

value - กำหนดองค์ประกอบใหม่ที่จะแทรกที่หน้าใน deque

ตัวอย่าง

อินพุต Deque - 12 13 14 15 16

เอาต์พุต New Deque - 11 12 13 14 15 16

อินพุต Deque - O R C E

เอาต์พุต New Deque: F O R C E

แนวทางการทำงาน

  • ประกาศ deque ก่อน
  • พิมพ์ deque
  • กำหนดฟังก์ชัน emplace_front()
  • พิมพ์ deque ใหม่หลังแทรกองค์ประกอบใหม่

ด้วยแนวทางด้านบน เราสามารถแทรกองค์ประกอบใหม่ที่หน้าได้ ในการกำหนดฟังก์ชัน เรากำหนดองค์ประกอบใหม่เป็นพารามิเตอร์ องค์ประกอบใหม่ควรมีชนิดข้อมูลเดียวกับ deque

ตัวอย่าง

// C++ code to demonstrate the working of deque emplace_front() function
#include <iostream>
#include <deque>
using namespace std;

int main() {
    // initializing the deque
    deque<int> dq = { 85, 87, 88, 89, 90 };
    // print the deque
    cout << "Deque: ";
    for(auto x = dq.begin(); x != dq.end(); ++x)
        cout << *x << " ";
    // defining the emplace_front() function
    dq.emplace_front(78);
    // printing deque after inserting new element
    cout << "\nNew Deque: ";
    for(auto x = dq.begin(); x != dq.end(); ++x)
        cout << *x << " ";
    return 0;
}

เอาต์พุต

Deque: 85 87 88 89 90
New Deque: 78 85 87 88 89 90