Project

Graph-Algorithms Visualizer

Challenging
58 completions
~ 39 hours
4.2

Learn how to draw graphs, create vertices and edges, connect them, handle events, and learn different algorithms in-depth. Apart from that, learn how to make your application extensible to support more and more algorithms in the future.

Provided by

JetBrains Academy JetBrains Academy

About

Visualization always draws attention. And it makes learning easier. What if we could visualize everything? In this project, you will build a Java GUI application with Swing to create graphs and visualize graph algorithms like traversals, spanning trees, and shortest pathfindings. You will practice concepts frequently tested in technical interviews at top tech companies.

Graduate project icon

Graduate project

This project covers the core topics of the Java Desktop Application Developer course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Set up the frame and panel, draw circles, and place them in different corners.
Place vertices on the screen by clicking. Create a dialog box for configuring vertex IDs.
Connect two components with a simple line to create an edge. Create a menu bar to handle menu events.
A nice user experience is a must. Add the option to remove vertices and edges to help users correct accidental errors.
Let's dive into the meat of the project – the algorithm implementation. Learn about graph traversal and implement it by highlighting vertices and edges.
Learn and implement Dijkstra's shortest path algorithm and modify your code architecture to support more algorithms.
Keep up with Prim's Algorithm and learn about the minimum spanning tree concept. Test your code architecture for extensibility.

Reviews

Jeroen Taheij
8 months ago
How to implement and visualize graphs and several algorithms which can be aplied to graphs. Very interesting, but challenging.
EVGENII MORGUNOV avatar
EVGENII MORGUNOV
9 months ago
I have learned how to create a graphical user interface (GUI) using Java Swing to visualize graph algorithms. This project helped me understand the implementation of various graph algorithms such as Depth-First Search (DFS), Breadth-First Search (BFS), Dijkstra's Algorithm, and Prim's Algorithm. I a ...
James Taylour avatar
James Taylour
2 years ago
Good project for tying together graph theory, as well as Swing development.

4.2

Learners who completed this project within the Java Desktop Application Developer course rated it as follows:
Usefulness
4.4
Fun
4.2
Clarity
3.9