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

queue::front() และ queue::back() ใน C++ STL


ในบทความนี้เราจะอธิบายการทำงาน ไวยากรณ์ และตัวอย่างของฟังก์ชัน queue::front() และ queue::back() ใน C++ Standard Template Library (STL)

Queue ใน C++ STL คืออะไร?

Queue เป็นโครงสร้างข้อมูลหรือลำดับข้อมูลพื้นฐานใน C++ STL ที่จัดการข้อมูลแบบ FIFO (First In First Out) ข้อมูลใน queue จะถูกจัดเก็บอย่างต่อเนื่อง องค์ประกอบจะถูกแทรกที่ปลาย (rear/back) และนำออกจากหน้า (front) C++ STL มี template ของ queue ให้ใช้งานสำเร็จรูปแล้ว

queue::front() คืออะไร?

queue::front() เป็นฟังก์ชันในตัวของ C++ STL ที่ประกาศใน header file <queue> ฟังก์ชันนี้ส่งคืน reference (อ้างอิง) ไปยังองค์ประกอบตัวแรกที่ถูกแทรกใน queue container นั่นคือ อ้างอิงถึงองค์ประกอบที่เก่าที่สุด (oldest) ใน queue

ไวยากรณ์ (Syntax)

myqueue.front();

พารามิเตอร์ (Parameters)

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

ค่าที่ส่งคืน (Return Value)

ส่งคืน reference ไปยังองค์ประกอบที่ถูกแทรกก่อนสุดใน queue container

ตัวอย่างการใช้งาน

Input: queue<int> myqueue = {10, 20, 30, 40};
myqueue.front();
Output: Front element of the queue = 10

ตัวอย่างโค้ดเต็ม

#include <iostream>
#include <queue>
using namespace std;

int main() {
    queue<int> Queue;
    Queue.push(10);
    Queue.push(20);
    Queue.push(30);
    Queue.push(40);
    Queue.push(40);
    
    cout << "Element in front of a queue is: " << Queue.front();
    return 0;
}

ผลลัพธ์ (Output)

Element in front of a queue is: 10

queue::back() คืออะไร?

queue::back() เป็นฟังก์ชันในตัวของ C++ STL ที่ประกาศใน header file <queue> ฟังก์ชันนี้ส่งคืน reference ไปยังองค์ประกอบตัวสุดท้ายที่ถูกแทรกใน queue container นั่นคือ อ้างอิงถึงองค์ประกอบที่ใหม่ที่สุด (newest) ใน queue

ไวยากรณ์ (Syntax)

myqueue.back();

พารามิเตอร์ (Parameters)

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

ค่าที่ส่งคืน (Return Value)

ส่งคืน reference ไปยังองค์ประกอบที่ถูกแทรกล่าสุดใน queue container

ตัวอย่างการใช้งาน

Input: queue<int> myqueue = {10, 20, 30, 40};
myqueue.back();
Output: Back element of the queue = 40

ตัวอย่างโค้ดเต็ม

#include <iostream>
#include <queue>
using namespace std;

int main() {
    queue<int> Queue;
    Queue.push(10);
    Queue.push(20);
    Queue.push(30);
    Queue.push(40);
    Queue.push(50);
    
    cout << "Elements at the back of the queue is: " << Queue.back();
    return 0;
}

ผลลัพธ์ (Output)

Elements at the back of the queue is: 50