ในบทความนี้เราจะอธิบายการทำงาน ไวยากรณ์ และตัวอย่างของฟังก์ชัน 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