Sorting Algorithm Visualiser
-
Journey into the mesmerizing world of data sorting with a visualisation tool designed to demystify the intricate sorting process. This versatile platform empowers you to not only witness but deeply understand how data transforms when processed by sorting algorithms. Featuring a vast array of options and capabilities, it's your gateway to exploring the fascinating realm of data organisation.
C#
Heap Sort
Project Highlights
- Real-time Visualisation: Immerse yourself in the sorting process with a real-time visualiser that can be paused and stopped at your command. Gain a profound understanding of how algorithms work under the hood.
- Algorithmic Arsenal: Choose from a diverse lineup of 20 distinct sorting algorithms, each with its own unique characteristics. Explore classics like Bubble Sort, Merge Sort, and Quicksort, and discover their Big-O complexities, stability, and in-place capabilities.
- Customisation Unleashed: Tailor your sorting experiments with precision. Select from 18 starting datasets, tweak dataset size, range, and delay, and choose custom colours and data display styles to match your preferences.
- Insightful Statistics: Dive deep into the performance metrics of each algorithm, with detailed statistics including comparisons, swaps, and duration provided. Grasp the true efficiency of each sorting strategy.
Algorithms
Bitonic | Parallel sorting algorithm |
Bogo | Randomly permutates all elements until fully sorted |
Bubble | Common simple algorithm |
Cocktail | Bubble sort in both directions |
Comb | Bubble sort variant with reducing gap |
Cycle | Optimised for minimal array writes |
Gnome | Insertion sort variant which swaps until element in correct position |
Heap | Builds heap and extracts from unsorted region |
Insertion | Builds sorted array one element at a time |
JSort | Builds heap then uses insertion sort |
Merge | Recursively merges half of the array |
OddEven | Compares all odd/even pairs then vice-versa |
Pancake | Flips array between regions |
Permutation | Compares every permutation of the array |
Radix LSD | Bucket sorts digits from least significant to most significant |
Selection | Builds sorted array one element at a time |
Shell | Bubble sort variant with reducing gap |
Smooth | Builds heap then extracts largest element |
Stooge | Recursively sorts first 2/3 then last 2/3 |
Quick | Divide and conquer algorithm that uses a pivot |