Our websites use cookies. By continuing, you agree to their use. See details
Graphs and Dijkstra's Algorithm Java Project | Portfolium
Graphs and Dijkstra's Algorithm Java Project
favorite 0
visibility 93
September 27, 2022 in Computer Science
This was a project I did for my object oriented programming class a few semesters ago. This class taught me how to use java and served as my introduction into coding. This project is a visualization of a graph data structure. A graph is an interconnected web of data points where each point has a path to other points with weights attached to the path. The higher the weight, the more costly it is to travel the path. This can be visualized as a maze; if there is no path between 2 data points then there is a wall between them in the maze. I programmed the computer to be able to search for the end data node by both a breadth first search (BFS) and a depth first search (DFS). A breadth first search checks all nodes starting with those closest to the start, ignoring walls, but remembering a path without walls to each node checked. Eventually the path to the end node will be reached. A depth first search goes as far as it can in one direction before hitting a dead end and then goes back to the last turn and takes another path. Eventually the path to the end will be reached.

Additionally, I implemented Dijkstra's algorithm as a pathfinding method as well. This algorithm will find the most efficient path to the end. The algorithm involves taking all adjacent paths into account when searching for the end of the maze and then calculating the shortest path once the end is found. Being able to translate an older concept into a project I made piqued my interest to learn about other algorithms I could use to make bigger projects.

This was the first project I created where I could visually show off something to others and explain what I had learned about computers. People didn't need to fully understand the underlying data structure to appreciate how cool the visualization was. I like to use this project as an example because it is simple enough for people to understand it but still uses underlying structures that I had to implement within the context of being used for the maze.

This project is an example of how seemingly simple computer programs can be much more complicated behind the scenes. It also serves as a glimpse into my beginnings as a programmer. It represents a person who was ready to build off of previous discoveries to inspire their own creations. I am still that same person today: a person who is thrilled to learn about landmark breakthroughs to make their own work ever better.
© 2025 • All content within this project is strictly the property of Parker Seaman and is not for public use without permission. Report Abuse
Parker Seaman

2 Skills