An interactive Algorithm Visualizer built with JavaFX that demonstrates how common sorting and searching algorithms work through step-by-step animations.
The application visually displays algorithm operations, pseudocode, statistics, and explanations to help users better understand Data Structures and Algorithms.
🔹 Sorting Algorithm Visualization
- Bubble Sort
- Selection Sort
🔹 Searching Algorithm Visualization
- Linear Search
- Binary Search
🔹 Step-by-step animation of algorithm execution
📊 Statistics Panel
- Comparisons
- Swaps
📄 Pseudocode Panel
- Displays algorithm pseudocode while running
🧠 Explanation Panel
- Explains what is happening during each step
🎛 Speed Control
- Adjust animation playback speed
- ☕ Java
- 🎨 JavaFX
- 🧩 Object Oriented Programming
- 📚 Data Structures & Algorithms
AlgorithmVisualizer
│
├── src
│ ├── animation
│ │ └── AnimationController.java
│ │
│ ├── backend
│ │ ├── Algorithms.java
│ │ ├── AlgorithmStats.java
│ │ ├── RandomArrayGenerator.java
│ │ └── StepTracker.java
│ │
│ └── ui
│ ├── ArrayCanvas.java
│ ├── ComplexityGraphPanel.java
│ ├── ControlPanel.java
│ ├── ExplanationPanel.java
│ ├── PseudoCodePanel.java
│ ├── StatsPanel.java
│ └── VisualizerApp.java
1️⃣ Clone the repository
git clone https://github.com/nipunn-git/java-algorithm-visualizer.git
2️⃣ Open the project in IntelliJ IDEA
3️⃣ Configure JavaFX SDK
4️⃣ Run:
VisualizerApp.java
🚀 Add more sorting algorithms
- Merge Sort
- Quick Sort
- Heap Sort
📈 Add graph algorithms
- BFS
- DFS
- Dijkstra
🎨 Improve UI animations 🧭 Add pathfinding visualizations
Nipun
📊 Data Science Student 💻 Exploring Algorithms, Frontend Development, and Applied AI