A Java-based application that demonstrates and visualizes fundamental data structures and graph traversal algorithms. This project provides an interactive way to understand how Binary Search Trees (BST), AVL Trees, Breadth-First Search (BFS), and Depth-First Search (DFS) work.
- Insert nodes into a BST
- Visual representation of tree structure
- Demonstrates BST insertion behavior
- Helps understand node placement and traversal
- Self-balancing binary search tree implementation
- Automatic tree rotations
- Visualization of balancing operations
- Demonstrates AVL insertion and height balancing
- Level-by-level graph traversal
- Queue-based implementation
- Step-by-step traversal demonstration
- Recursive graph traversal
- Explores nodes as deeply as possible before backtracking
- Useful for understanding graph exploration techniques
.
├── MainApp.java # Main application entry point
├── BSTVisualizer.java # Binary Search Tree visualization
├── AVLTreeVisualizer.java # AVL Tree visualization
└── bfs_dfs.java # BFS and DFS implementations
- Java JDK 8 or higher
- Any Java IDE (IntelliJ IDEA, Eclipse, NetBeans, VS Code)
Compile all Java files:
javac *.javaRun the main application:
java MainApp- Binary Search Trees
- AVL Trees
- Tree Rotations
- Tree Traversals
- Graph Theory
- Breadth-First Search (BFS)
- Depth-First Search (DFS)
- Data Structure Visualization
This project was developed to help students and beginners understand the internal working of tree data structures and graph traversal algorithms through visualization and interactive execution.
Shabhareash
Feel free to contribute, improve visualizations, or extend the project with additional data structures and algorithms.