Sorting algorithms demo (Java)
This Java program shows an animation of various sorting algorithms in action, such as bubble sort or quicksort.
The program includes these sorting algorithms: bubble sort, cocktail sort, selection sort, pancake sort, quasi-pancake sort, gnome sort, insertion sort, insertion sort (with binary search), Shell sort, heapsort, quicksort (double-ended), quicksort (sliding), Stooge sort, stupid sort, bozo sort.
Download
JAR file: nayuki-sort-demo.jar
On Windows, simply double click the JAR file to run it. Otherwise, type this on a command line: java -jar nayuki-sort-demo.jar
Source code
The source code is included in the JAR file, and is also hosted at GitHub. It is open source under the MIT license.
Browse the source code at GitHub: https://github.com/nayuki/Sorting-algorithms-demo
Or download a ZIP of all the files: https://github.com/nayuki/Sorting-algorithms-demo/archive/master.zip
The code package also includes JUnit test cases for every sorting algorithm to ensure that they are implemented correctly.
Videos
Small array (size 30): bubble sort, cocktail sort, selection sort, insertion sort, insertion sort (binary search), gnome sort, pancake sort, quasi-pancake sort, Shell sort, heap sort, quick sort (double-ended), quick sort (sliding), stupid sort, stooge sort, bozo sort.
Large array (size 300): bubble sort, cocktail sort, selection sort, insertion sort, pancake sort, quasi-pancake sort, Shell sort, heap sort, quick sort (double-ended), quick sort (sliding).
Note that the videos run at different speeds, so the length of the video is not a reliable indicator of the sorting algorithm’s speed. Check the number of comparisons and swaps to see how much work was actually performed by the algorithm.