An open API service indexing awesome lists of open source software.

https://github.com/mdtanvirhossaintusher/algo-visualizer

Desktop application to visualize how sorting & seraching algorithms works internally
https://github.com/mdtanvirhossaintusher/algo-visualizer

java java-swing

Last synced: over 1 year ago
JSON representation

Desktop application to visualize how sorting & seraching algorithms works internally

Awesome Lists containing this project

README

          

# Algorithm-Visualizer

A desktop application which helps to visualize how an algorithm works internally. Users can easily understand the working process of an algorithm by this application. Here, I worked with sorting and searching algorthms. Such as-

**Sorting Algorithms**
1. Bubble Sort
2. Selection Sort
3. Insertion Sort
4. Merge Sort
5. Quick Sort

**Searching Algorithms**
1. Linear Search
2. Binary Search

# Features

User can generate the array and can also manually input the array. Other functionalities are given below-

1. Select algorthim from `Algorithms` combobox and graph from `Graph Types` combobox
2. Click `Shuffle` button to shuffle the array
3. Click `Sort` button to sort the array
4. `Array Size` slider to change the random array size. Not applicable for the manually inputed array
5. Make the visualize process `faster` or `slower` by sliding the `Delay` slider
6. User can see the selected algorithm's complexity in the `complexity` area
7. User can see the selected algorithm's code in the `code` area
8. User can input the array manually in the `Insert Data` field. For the simplicity, negetive values are not allowed
9. Last data will be the key of an array

# User Interface

1. `Merge Sort` process for the randomly generated array.

daily dump

2. `Binary Search` process for the manually inserted data.

date option

# Build and Run

Follow the given steps below to run the project-

1. Open the terminal and copy & paste this command - `git clone https://github.com/MdTanvirHossainTusher/Algo-Visualizer.git`
2. There is a `.java` file called `MainApp`. Run this file.