กำหนดให้เป็นหน้าที่แสดงการทำงานของฟังก์ชัน deque emplace_front( ) และ deque emplace_back( ) ใน C++ STL
เด็คคืออะไร
Deque คือ Double Ended Queues ซึ่งเป็นคอนเทนเนอร์ลำดับที่ให้การทำงานของการขยายและการหดตัวทั้งสองด้าน โครงสร้างข้อมูลคิวอนุญาตให้ผู้ใช้แทรกข้อมูลได้เฉพาะที่ END และลบข้อมูลออกจาก FRONT ลองมาเปรียบเทียบคิวที่ป้ายรถเมล์ที่คนสามารถแทรกลงในคิวจาก END เท่านั้นและบุคคลที่ยืนอยู่ด้านหน้าจะเป็นคนแรกที่ถูกลบในขณะที่ในคิวแบบ Double End การแทรกและการลบข้อมูลทำได้ทั้งสองแบบ จบ.
ฟังก์ชัน emplace_front( ) คืออะไร
ฟังก์ชัน emplace_front( ) แทรกองค์ประกอบใหม่ที่จุดเริ่มต้นของ deque
ไวยากรณ์
dequename.emplace_front(value)
พารามิเตอร์
ค่า - มันกำหนดองค์ประกอบใหม่ที่จะแทรกที่จุดเริ่มต้นใน deque
ตัวอย่าง
ป้อนข้อมูล เด็ค − 12 13 14 15 16
ผลผลิต ใหม่ Deque − 11 12 13 14 15 16
ป้อนข้อมูล Deque − O R C E
ผลผลิต ใหม่ Deque:F O R C E
แนวทางสามารถติดตามได้
-
ขั้นแรก เราประกาศเดค
-
จากนั้นเราก็พิมพ์ดีค
-
จากนั้นให้กำหนดฟังก์ชัน emplace_front( )
-
จากนั้นเราจะพิมพ์ deque ใหม่หลังจากใส่องค์ประกอบใหม่แล้ว
โดยใช้วิธีการข้างต้น เราสามารถป้อนองค์ประกอบใหม่ได้ตั้งแต่เริ่มต้น ในขณะที่กำหนดฟังก์ชัน เรากำหนดองค์ประกอบใหม่เป็นพารามิเตอร์ องค์ประกอบใหม่ควรมีประเภทข้อมูลเหมือนกับ deque
ตัวอย่าง
// C++ code to demonstrate the working of deque emplace_front( ) 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 << “ “;
// defining the emplace_front( ) function
deque.emplace_front(78);
// printing deque after inserting new element
cout<< “ New Deque:”;
for( x = deque.begin( ) ; x != deque.end( ); ++x)
cout<< “ “ <<*x;
return 0;
} ผลลัพธ์
หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้
Input - Deque: 85 87 88 89 90 Output - New Deque: 78 85 87 88 89 90 Input – Deque: O I S E Output – New Deque: N O I S E