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

คิว::พุช() และคิว::ป๊อป() ใน C++ STL


ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน queue::push() และ queue::pop() ใน C++ STL

คิวใน C++ STL คืออะไร

คิวคือลำดับอย่างง่ายหรือโครงสร้างข้อมูลที่กำหนดไว้ใน C++ STL ซึ่งทำการแทรกและลบข้อมูลในรูปแบบ FIFO (เข้าก่อนออกก่อน) ข้อมูลในคิวจะถูกจัดเก็บในลักษณะต่อเนื่อง องค์ประกอบจะถูกแทรกที่ส่วนท้ายและลบออกจากจุดเริ่มต้นของคิว ใน C++ STL มีเทมเพลตคิวที่กำหนดไว้ล่วงหน้า ซึ่งแทรกและลบข้อมูลในลักษณะที่คล้ายกันของคิว

que::push() คืออะไร

Queue::push() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งประกาศไว้ในไฟล์ส่วนหัว Queue::push() ใช้เพื่อผลักหรือแทรกองค์ประกอบใหม่ที่ส่วนท้ายหรือที่ด้านหลังของคอนเทนเนอร์คิว push() ยอมรับพารามิเตอร์หนึ่งตัว นั่นคือองค์ประกอบที่เราต้องการผลัก/แทรกในคอนเทนเนอร์คิวที่เกี่ยวข้อง นอกจากนี้ ฟังก์ชันนี้ยังเพิ่มขนาดของคอนเทนเนอร์อีก 1 รายการด้วย

ฟังก์ชันนี้เรียก push_back() เพิ่มเติม ซึ่งช่วยในการแทรกองค์ประกอบที่ด้านหลังของคิวได้อย่างง่ายดาย

ไวยากรณ์

myqueue.push(type_t& value);

ฟังก์ชันนี้ยอมรับค่าพารามิเตอร์หนึ่งตัวซึ่งเป็นค่าของ type_t ซึ่งเป็นประเภทขององค์ประกอบในคอนเทนเนอร์คิว

คืนค่า

ฟังก์ชันนี้ไม่ส่งคืนสิ่งใด

ตัวอย่าง

Input: queue<int> myqueue = {10, 20 30, 40};
      myqueue.push(23);
Output:
      Elements in the queue are= 10 20 30 40 23

ตัวอย่าง

#include <iostream>
#include <queue>
using namespace std;
int main(){
   queue<int> Queue;
   for(int i=0 ;i<=5 ;i++){
      Queue.push(i);
   }
      cout<<"Elements in queue are : ";
   while (!Queue.empty()){
      cout << ' ' << Queue.front();
      Queue.pop();
   }
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

Elements in queue are : 0 1 2 3 4 5

que::pop() คืออะไร

Queue::pop() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งประกาศไว้ในไฟล์ส่วนหัว Queue::pop() ใช้เพื่อผลักหรือลบองค์ประกอบที่มีอยู่จากจุดเริ่มต้นหรือจุดเริ่มต้นของคอนเทนเนอร์คิว pop() ไม่ยอมรับพารามิเตอร์ และลบองค์ประกอบจากจุดเริ่มต้นของคิวที่เกี่ยวข้องกับฟังก์ชัน และลดขนาดของคอนเทนเนอร์คิวลง 1

ไวยากรณ์

myqueue.pop();

ฟังก์ชันนี้ไม่รับพารามิเตอร์

คืนค่า

ฟังก์ชันนี้ไม่ส่งคืนสิ่งใด

ตัวอย่าง

Input: queue myqueue = {10, 20, 30, 40};
      myqueue.pop();
Output:
      Elements in the queue are= 20 30 40

ตัวอย่าง

#include <iostream>
#include <queue>
using namespace std;
int main(){
   queue<int> Queue;
   for(int i=0 ;i<=5 ;i++){
      Queue.push(i);
   }
   for(int i=0 ;i<5 ;i++){
      Queue.pop();
   }
   cout<<"Element left in queue is : ";
   while (!Queue.empty()){
      cout << ' ' << Queue.front();
      Queue.pop();
   }
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

Element left in queue is : 5