Program Java untuk Menerapkan struktur data antrian

Dalam contoh ini, kita akan belajar mengimplementasikan struktur data antrian di Java.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:

  • Antarmuka Antrian Java
  • Generik Java

Contoh 1: Program Java untuk mengimplementasikan Stack

 public class Queue ( int SIZE = 5; int items() = new int(SIZE); int front, rear; Queue() ( front = -1; rear = -1; ) // check if the queue is full boolean isFull() ( if (front == 0 && rear == SIZE - 1) ( return true; ) return false; ) // check if the queue is empty boolean isEmpty() ( if (front == -1) return true; else return false; ) // insert elements to the queue void enQueue(int element) ( // if queue is full if (isFull()) ( System.out.println("Queue is full"); ) else ( if (front == -1) ( // mark front denote first element of queue front = 0; ) rear++; // insert element at the rear items(rear) = element; System.out.println("Insert " + element); ) ) // delete element from the queue int deQueue() ( int element; // if queue is empty if (isEmpty()) ( System.out.println("Queue is empty"); return (-1); ) else ( // remove element from the front of queue element = items(front); // if the queue has only one element if (front>= rear) ( front = -1; rear = -1; ) else ( // mark next element as the front front++; ) System.out.println( element + " Deleted"); return (element); ) ) // display element of the queue void display() ( int i; if (isEmpty()) ( System.out.println("Empty Queue"); ) else ( // display the front of the queue System.out.println("Front index-> " + front); // display element of the queue System.out.println("Items -> "); for (i = front; i " + rear); ) ) public static void main(String() args) ( // create an object of Queue class Queue q = new Queue(); // try to delete element from the queue // currently queue is empty // so deletion is not possible q.deQueue(); // insert elements to the queue for(int i = 1; i < 6; i ++) ( q.enQueue(i); ) // 6th element can't be added to queue because queue is full q.enQueue(6); q.display(); // deQueue removes element entered first i.e. 1 q.deQueue(); // Now we have just 4 elements q.display(); ) )

Keluaran

 Antrian kosong Sisipkan 1 Sisipkan 2 Sisipkan 3 Sisipkan 4 Sisipkan 5 Antrean penuh Indeks depan-> 0 Item -> 1 2 3 4 5 Indeks belakang-> 4 1 Dihapus Indeks depan-> 1 Item -> 2 3 4 5 Indeks belakang -> 4

Dalam contoh di atas, kami telah mengimplementasikan struktur data antrian di Jawa.

Untuk mempelajari cara kerja antrian, kunjungi Struktur Data Antrian.

Contoh 2: Menerapkan tumpukan menggunakan antarmuka Antrian

Java menyediakan Queueantarmuka yang dibangun yang dapat digunakan untuk mengimplementasikan antrian.

 import java.util.Queue; import java.util.LinkedList; class Main ( public static void main(String() args) ( // Creating Queue using the LinkedList class Queue numbers = new LinkedList(); // enqueue // insert element at the rear of the queue numbers.offer(1); numbers.offer(2); numbers.offer(3); System.out.println("Queue: " + numbers); // dequeue // delete element from the front of the queue int removedNumber = numbers.poll(); System.out.println("Removed Element: " + removedNumber); System.out.println("Queue after deletion: " + numbers); ) )

Keluaran

 Antrian: (1, 2, 3) Elemen yang Dihapus: 1 Antrian setelah penghapusan: (2, 3)

Dalam contoh di atas, kami telah menggunakan Queueantarmuka untuk mengimplementasikan antrian di Java. Di sini, kami telah menggunakan LinkedListkelas yang mengimplementasikan Queueantarmuka.

  • number.offer () - menyisipkan elemen ke belakang antrian
  • numbers.poll () - menghapus elemen dari depan antrian

Perhatikan, kami telah menggunakan tanda kurung sudut saat membuat antrian. Ini menunjukkan bahwa antrian adalah tipe generik.

Kita juga bisa menggunakan antarmuka dan kelas lain selain Queuedan LinkedList. Sebagai contoh,

  • Antarmuka Deque
  • Kelas ArrayDeque
  • Kelas PriorityQueue

Artikel yang menarik...