Skip to content

PouriaAmini/sortviz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SORTVIZ
Sorting Visualization Application

An educational game created with the help of swing and awt frameworks to teach the users how the sorting algorithms work in the world of the computers. The application will visualize the process of sorting to the user and helps them utilize their knowledge of sorting algorithms to play various games one the application. The user has to play the games and earn points to be able to unlock different sorting algorithms.

The sorting algorithms include:

  • Bubble Sort
  • Gnome Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort
  • Radix Sort
  • Shell Sort
  • Selection Sort

Demo:

Sorting Demo:

Screen.Recording.2021-12-28.at.12.59.57.AM.mp4

Game Demo:

Screen Shot 2021-12-28 at 1 02 41 AM

Coding Mechanism:

There are 11 main and 10 supporting classes forming this application. The main classes include the primary functions of the application, and the other supporting classes include the sorting algorithms and the games created for the application. Although new games and sorting algorithms can be added to the collection, further modification is required on the main classes after doing so. Also, the description of each of the classes is written using javadoc and comments. The "Version" in Javadoc corresponds to the number of modifications made to that methode (Not modified methods after creation are version 1.1). The exact position of the components of the game is determined using the Apache NetBeans IDE to make the game more precise and appealing.

Follow the below steps before running the program:

  • Run the program through the "Main" class.
  • If you wish to modify the classes and they are locked, in Intellij IDE, go to File/File Properties/Make File Writable.
  • The Javadocs were written in HTML. I would recommend rendering them before reading (If not rendered beforehand).
  • If you wish to test the application, use the "USERNAME: admin" and "PASSWORD: 1382" to login. This gives you full access to the features of the application.