The Binary Tree Visualizer is a JavaFX-based desktop application that helps users learn and explore binary trees through interactive visualizations. It brings algorithms to life by animating standard tree traversals, making data structure learning more intuitive and engaging.
The Binary Tree Visualizer is a JavaFX application designed to help users understand and visualize binary trees in a dynamic, hands-on way. With this interactive tool, you can create binary trees, visualize their structure, and animate various traversal algorithms such as pre-order, in-order, post-order, and level-order. You can also input custom sequences to construct and explore personalized trees, making the app an excellent learning aid for both students and educators.
- Automatically generate and display binary trees with graphical nodes and edges.
- Instantly see how different insertion orders affect tree structure.
-
View step-by-step animations of core traversal algorithms:
- Pre-order
- In-order
- Post-order
- Level-order
-
Great for reinforcing theoretical concepts with visual examples.
- Enter your own sequence of numbers (comma-separated) to create a custom tree.
- Intelligent insertion logic with basic handling for duplicates.
- Intuitive layout with clearly labeled buttons and inputs.
- Real-time rendering and animation feedback.
- Java Development Kit (JDK): Latest version recommended (e.g., JDK 22).
- JavaFX SDK: Ensure JavaFX is properly downloaded and configured in your IDE.
- Helpful Setup Guide: 🎥 How To Setup JavaFX 22 and JDK 22 on NetBeans IDE (YouTube)
-
Clone the repository:
git clone https://github.com/AceBurgundy/JAVAFx-BinaryTree-Visualizer.git
-
Open the project in your preferred Java IDE (IntelliJ, NetBeans, Eclipse).
-
Ensure JavaFX libraries are correctly linked in your project settings.
-
Run the
Appclass to launch the visualizer.
-
Launch the App:
- Execute the
Appclass or use the.exeif on Windows.
- Execute the
-
Generate a Tree:
- Use default or custom values to generate your binary tree.
-
Custom Sequences:
- Input a comma-separated list of numbers and hit "Create" to build your own tree.
-
Run Traversals:
- Select any traversal method (Preorder, Inorder, Postorder, Level-order).
- Click "Create" to animate the traversal and observe the algorithm in action.
-
Reset Functionality:
- Clear the tree with the "Reset" button and start a new session.
We welcome open-source contributions!
To contribute:
-
Fork the repository.
-
Create a feature branch:
git checkout -b feature-yourFeatureName
-
Commit your changes:
git commit -m "Describe your update" -
Push to your forked repo:
git push origin feature-yourFeatureName
-
Submit a pull request with a brief explanation.
This project is licensed under the Eclipse Public License - v 2.0.
For support or collaboration inquiries:
- 📧 Email: samadriansabalo99@gmail.com
- 💻 GitHub: AceBurgundy
