กำหนดให้เป็นหน้าที่แสดงการทำงานของฟังก์ชัน Deque insert( ) ใน C++ STL
เด็คคืออะไร
Deque คือ Double Ended Queues ซึ่งเป็นคอนเทนเนอร์ลำดับที่ให้การทำงานของการขยายและการหดตัวทั้งสองด้าน โครงสร้างข้อมูลคิวอนุญาตให้ผู้ใช้แทรกข้อมูลได้เฉพาะที่ END และลบข้อมูลออกจาก FRONT ลองมาเปรียบเทียบคิวที่ป้ายรถเมล์ที่คนสามารถแทรกลงในคิวจาก END เท่านั้นและบุคคลที่ยืนอยู่ด้านหน้าจะเป็นคนแรกที่ถูกลบในขณะที่ในคิวแบบ Double End การแทรกและการลบข้อมูลทำได้ทั้งสองแบบ จบ.
ส่วนแทรก ( ) คืออะไร
ฟังก์ชัน deque insert( ) ใช้เพื่อแทรกองค์ประกอบใน deque
-
ฟังก์ชันนี้ใช้แทรกองค์ประกอบในตำแหน่งที่กำหนด
-
ฟังก์ชันนี้ยังใช้เพื่อแทรก n No. ขององค์ประกอบใน deque
-
นอกจากนี้ยังใช้การแทรกองค์ประกอบในช่วงที่กำหนด
ไวยากรณ์
deque_name.insert (iterator position, const_value_type& value) deque_name.insert (iterator position, size_type n, const_value_type& value) deque_name.insert (iterator position, iterator first, iterator last)
พารามิเตอร์
-
ค่า – ระบุองค์ประกอบใหม่ที่จะแทรก
-
n – ระบุจำนวนขององค์ประกอบที่จะแทรก
-
first, last – ระบุ iterator ซึ่งระบุช่วงขององค์ประกอบที่จะแทรก
ผลตอบแทนที่ได้รับ
ส่งคืนตัววนซ้ำที่ชี้ไปที่องค์ประกอบแรกที่แทรกใหม่
ตัวอย่าง
ป้อนข้อมูล เด็ค − 1 2 3 4 5
ผลผลิต ใหม่ Deque − 1 1 2 3 4 5
ป้อนข้อมูล เด็ค − 11 12 13 14 15
ผลผลิต ใหม่ Deque − 11 12 12 12 13 14 15
แนวทางสามารถติดตามได้
-
ขั้นแรก เราประกาศเดค
-
จากนั้นเราก็พิมพ์ดีค
-
จากนั้นเราประกาศฟังก์ชัน insert( )
โดยใช้วิธีการข้างต้น เราสามารถแทรกองค์ประกอบใหม่ได้
ตัวอย่าง
// C++ code to demonstrate the working of deque insert( ) function #include<iostream.h> #include<deque.h> Using namespace std; int main ( ){ // declaring the deque Deque<int> deque = { 55, 84, 38, 66, 67 }; // print the deque cout<< “ Deque: “; for( auto x = deque.begin( ); x != deque.end( ); ++x) cout<< *x << “ “; // declaring insert( ) function x = deque.insert(x, 22); // printing deque after inserting new element cout<< “ New Deque:”; for( x = deque.begin( ); x != deque.end( ); ++x) cout<< “ “ <<*x; return 0; }
ผลลัพธ์
หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้
Input - Deque: 55 84 38 66 67 Output - New Deque: 22 55 84 38 66 67
ตัวอย่าง
// C++ code to demonstrate the working of deque insert( ) function #include<iostream.h> #include<deque.h> Using namespace std; int main( ){ deque<char> deque ={ ‘B’ , ‘L’ , ‘D’ }; cout<< “ Deque: “; for( auto x = deque.begin( ); x != deque.end( ); ++x) cout<< *x << “ “; deque.insert(x + 1, 2, ‘O’); // printing deque after inserting new element cout<< “ New Deque:”; for( auto x = deque.begin( ); x != deque.end( ); ++x) cout<< “ “ <<*x; return 0; }
ผลลัพธ์
หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้
Input – Deque: B L D Output – New Deque: B L O O D
ตัวอย่าง
// C++ code to demonstrate the working of deque insert( ) function #include<iostream.h> #include<deque.h> #include<vector.h> Using namespace std; int main( ){ deque<int> deque ={ 65, 54, 32, 98, 55 }; cout<< “ Deque: “; for( auto x = deque.begin( ); x != deque.end( ); ++x) cout<< *x << “ “; vector<int7gt; v(3, 19); deque.insert(x, v.begin( ), v.end( ) ); // printing deque after inserting new element cout<< “ New Deque:”; for( auto x = deque.begin( ); x != deque.end( ); ++x) cout<< “ “ <<*x; return 0; }
ผลลัพธ์
หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้
Input – Deque: 65 54 32 98 55 Output – New Deque: 65 19 19 19 65 54 32 98 55