Konversi Ekspresi Infix ke Ekspresi Postfix Menggunakan Konsep Queue Pada Java

Queue

Queue

Queue merupakan salah satu jenis struktur data linier yang berbentuk antrian, dimana ketika data pertama kali masuk, akan selalu ditempatkan di posisi paling akhir. Queue menggunakan prinsip FIFO (First In First Out), dimana data yang pertama kali masuk akan dilayani/dioperasikan terlebih dahulu sebelum dikeluarkan.

Ekspresi Infix

Ekspresi infix merupakan bentuk ekspresi aritmatika yang biasa kita jumpai, dimana beberapa operand dilakukan suatu operasi menggunakan operator (+, -, *, /, ^) yang diletakkan diantara dua buah operand. Sebagai contoh yaitu ekspresi a + (b * c) berarti kita melakukan operasi perkalian pada operand pertama, yaitu b, dengan operand kedua, yaitu c, dimana hasilnya dijadikan sebagai operand kedua dari operasi berikutnya, yaitu operasi penjumlahan dengan operand pertama yaitu a.

Ekspresi Postfix

Walaupun bentuk ekspresi infix sangat mudah dipahami dan dievaluasi oleh manusia, tetapi ekspresi ini tidak bisa dipahami oleh komputer secara langsung, karena komputer tidak bisa secara langsung menentukan secara pasti operasi mana yang harus dikerjakan terlebih dahulu. Oleh karena itu, perlu adanya bentuk ekspresi lain yang dapat dipahami oleh komputer, yaitu ekspresi postfix. Pada operasi postfix, suatu operator tidak diletakkan di antara dua operator, melainkan berada di belakang operator. Sebagai contoh yaitu ketika kita memiliki bentuk ekspresi infix a + b , ketika dikonversi menjadi ekspresi postfix akan menjadi ab+.

Program Konversi Ekspresi Infix ke Ekspresi Postfix

Berikut ini merupakan program implementasi queue dan stack sebagai basis struktur data yang akan digunakan :

Berikut ini program utama yang menjalankan konversi ekspresi infix ke postfix :

Berikut ini program yang menjadi aplikasi konsol untuk menjalankan program konversi :

Ketika method main pada class QueueApplication dijalankan, maka hasilnya akan menjadi seperti berikut :

Hasil Program Queue

Source code dari program di atas dapat diakses di sini

Reference :

Comments

Popular posts from this blog

Final Project Struktur Data 2021

Implementasi Struktur Data Graph Pada Java