กำหนดให้เป็นหน้าที่แสดงการทำงานของฟังก์ชัน 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