The Sorting Algorithm Visualizer is a Python-based graphical user interface (GUI) application developed using the Tkinter library. This tool visualizes the functioning of various sorting algorithms, providing a dynamic and intuitive representation of how algorithms like Bubble Sort, Insertion Sort, Selection Sort, Merge Sort, and Quick Sort work on an array of numbers. The application highlights the sorting process with color-coded bars, allowing users to better understand the performance and behavior of each algorithm.
The visualizer is designed to display the Time Complexity and Space Complexity of each sorting algorithm.
- Visual Representation: Observe sorting algorithms in action with color-coded bars:
- Blue: Elements being processed during the sorting.
- Red: Elements being compared or swapped.
- Green: Sorted elements.
- Sorting Algorithms Supported:
- Bubble Sort
- Insertion Sort
- Selection Sort
- Merge Sort
- Quick Sort
- Time & Space Complexity: Displays the Time Complexity and Space Complexity of each algorithm after execution.
- Customizable: Allows users to select different sorting algorithms and watch them sort an array with customizable sizes and delays.
- Python 3.x: Programming language used for implementation.
- Tkinter: GUI framework for creating the application window and rendering the visualizations.
- Random: For generating random arrays to be sorted.