Menu
CoddyTech

Antrean

Pelajaran 11 dari 23 dalam kursus C++ - Standard Template Library di Coddy.

C++ Queue adalah struktur data yang menyediakan fungsionalitas antrean, lebih tepatnya, mengikuti prinsip FIFO (Masuk pertama, keluar pertama). Artinya, elemen yang pertama kali ditambahkan ke antrean akan keluar dari antrean, atau dihapus dari antrean, terlebih dahulu.


queue<dataType> queueName;

Untuk membuat antrean di C++, kita perlu menyertakan file header queue di bagian atas file C++ menggunakan #include <queue>.

Sekarang kita dapat mendeklarasikan antrean di program kita sebagai berikut:

queue<int> queueOfNums;

Kita perlu mempelajari cara menambahkan elemen baru ke antrean. Kita melakukannya dengan menggunakan method push(). Method push() menyisipkan elemen baru di akhir antrean.

queueOfNums.push(1);
queueOfNums.push(2);
...

Selanjutnya, kita ingin menampilkan elemen-elemen antrean. Karena ini adalah antrean, kita dapat menampilkan elemen pertama yang ditambahkan ke antrean. Untuk itu, kita menggunakan method front(). Method ini mengembalikan elemen pertama dalam antrean.

cout << queueOfNums.front();
Output:
1

Berbeda dengan stack, yang hanya memungkinkan kita menampilkan elemen teratas, atau elemen terakhir dalam stack. Dengan antrean, kita juga dapat menampilkan nilai terakhir dalam antrean. Kita melakukannya menggunakan method back(), yang mengembalikan elemen terakhir dalam antrean.

queueOfNums.push(3);
cout << queueOfNums.back();
Output:
3

Kita juga perlu mempelajari cara menghapus elemen dari antrean. Sayangnya, kita hanya dapat menghapus elemen yang berada di bagian depan dan ditambahkan pertama kali, karena ini tetaplah antrean. Jadi, kita tidak dapat menghapus elemen terakhir terlebih dahulu. Untuk itu, kita menggunakan stack dan prinsip LIFO (Masuk terakhir, keluar pertama).

Jadi, kita menghapus elemen di bagian depan menggunakan method pop().

queueOfNums.pop();
cout << queueOfNums.front() << endl;
queueOfNums.pop();
cout << queueOfNums.front();
Output:
1
2

Method Queue

MethodFungsionalitas
size()Mengembalikan jumlah elemen dalam antrean
empty()Mengembalikan true jika antrean kosong, false jika tidak
swap()Menukar isi satu antrean dengan antrean lainnya
challenge icon

Tantangan

Mudah

Diberikan 10 angka dari input. Gunakan queue dan keluarkan angka satu per satu dengan menghapusnya, lalu keluarkan hanya angka genap.

 

Input
1 2 3 4 5 6 7 8 9 10
Output
2 4 6 8 10

Coba sendiri

#include <queue>
#include <iostream>

using namespace std;

int main()
{
    // Enter your code here

    return 0;
}

Semua pelajaran di C++ - Standard Template Library

Latihan sendiri: Compiler C++ online