Skip to content

This project visually demonstrates various sorting algorithms, allowing users to see how they work in real time through animations. Features include adjustable speed, pause/resume functionality, and support for multiple sorting techniques including Bubble,Selection,Merge,Quick,Insertion and Heap Sort.

License

Notifications You must be signed in to change notification settings

chauhansachin13/SORTING-ALGORITHMS-VISUALIZER

Repository files navigation

SORTING ALGORITHMS VISUALISER

Feel free to download the SortingAlgorithmsVisualizer.exe [94 KB] file to experience the project visualization.

Click the image below to watch the Demo video.

Video Thumbnail with Play Button

Overview

"Sorting Algorithms Visualiser" is an interactive tool that visually demonstrates various sorting algorithms, allowing users to see how they work in real time.

Features

  • Visualize Sorting Algorithms: View Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort, and Heap Sort in real-time.
  • Adjustable Speed: Use a slider to control the speed of the sorting process.
  • Pause and Resume: Pause the sorting process and resume it later.
  • Stop Sorting: Stop the sorting process at any time.
  • Dynamic Array Generation: Generate arrays of various sizes with random values.
  • Complexity Information: View time complexity details for each sorting algorithm.

Algorithms Supported

  • Bubble Sort
  • Selection Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort
  • Heap Sort

Getting Started

Prerequisites

  • Java Development Kit (JDK) 8 or higher

Installation

  1. Clone the repository:

    git clone https://github.com/chauhan13/SORTING-ALGORITHMS-VISUALIZER.git
  2. Navigate to the project directory:

    cd SORTING-ALGORITHMS-VISUALIZER
  3. Compile the Java files:

    javac SortingAlgorithmsVisualizer.java
  4. Run the application:

    java SortingAlgorithmsVisualizer

Usage

  1. Generate Array: Enter the desired array size and click the "Generate Array" button.
  2. Select Algorithm: Choose a sorting algorithm from the dropdown menu.
  3. Start Sorting: Click "Start Sorting" to begin the visualization. 4.Adjust Speed Use the speed slider to control the animation speed.
  4. Pause/Resume: Click "Pause" to pause the sorting and "Resume" to continue.
  5. Stop: Click "Stop" to terminate the sorting process.
  6. View Complexity: After sorting is complete, a dialog will appear showing the time complexity of the selected algorithm.

Screenshots

1. Application Overview

image alt

2. Array Generation

image alt

3. Algorithm Selection

image alt

4. Sorting in Progress

image alt

5. Controls

image alt

6. Complexity Dialog

image alt

Contributing

Feel free to fork the repository and submit pull requests. For any issues or feature requests, please open an issue on the GitHub repository.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For questions or feedback, please contact sachin_2021bcse084@nitsri.ac.in

Sorting Algorithms Visualiser is a project aimed at making sorting algorithms more comprehensible through visual representation for educational puposes. Happy sorting!

About

This project visually demonstrates various sorting algorithms, allowing users to see how they work in real time through animations. Features include adjustable speed, pause/resume functionality, and support for multiple sorting techniques including Bubble,Selection,Merge,Quick,Insertion and Heap Sort.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages