Data Structures – Queue Simulation Overview
This repository contains one of my second-year Data Structures projects built entirely in Java.
Rather than using Java's built-in Queue classes, I implemented a queue from scratch using arrays and applied it to a console-based ordering system. The goal of the project was to understand how FIFO (First-In, First-Out) data structures work by solving a practical problem.
Concepts Practiced Queue implementation from scratch Circular array indexing FIFO (First-In, First-Out) Arrays Multi-dimensional arrays Nested loops Console application development Basic business logic Features Queue customers Serve customers in FIFO order Multiple food ordering Receipt generation Menu navigation Queue visualization Technologies Java Object-Oriented Programming Arrays Data Structures Project Structure Runner.java
Contains the main application flow, ordering logic, and user interaction.
stringQueue.java
Contains the custom queue implementation including:
enqueue() dequeue() peek() isEmpty() getSize() Reflection
This project was developed during my second year while studying Data Structures and Algorithms.
Looking back, there are many areas I would improve today, such as:
Separating business logic into multiple classes Replacing large conditional blocks with cleaner abstractions Using objects instead of multi-dimensional arrays Improving naming conventions Writing automated tests
Despite these improvements, I have intentionally kept the original implementation as a record of my learning journey and understanding at that stage.
What I Learned
This project helped me understand that data structures become much easier to learn when applied to real-world scenarios instead of isolated exercises. Implementing a queue from scratch reinforced how FIFO behavior works and how fundamental data structures support practical applications.