QuickSort in Dance

Nik may be one of the few readers of this blog (if he actually reads it) who might appreciate what the QuickSort algorithm is.  It is a venerable staple of computer programming to quickly sort the values in an array (expressed as a range of numbers you are working with).  Basically it works by choosing a “pivot” or a member of the array and creating “partitions” to group the remaining numbers into those greater in value than the pivot and into those lesser in value.  Then progressive iterations ultimately determine and re-arrange and re-attach the numbers into a new array that is sorted from lowest to highest (using a “pointer” to show the movement through the array).  If you want a much more complete and proper explanation of quicksort, try http://en.wikipedia.org/wiki/Quicksort or http://www.cs.auckland.ac.nz/~jmor159/PLDS210/qsort.html or http://rosettacode.org/wiki/Sorting_algorithms/Quicksort or lots of other computer science/computer programming references (just try Google if you don’t understand the explanation at any of these links).

Anyway, I am told that a Romanian art student who minored in computer science devised a way to illustrate the QuickSort algorithm through the medium of Hungarian folk dancing (albeit a bit slower than a computer can do it). And here it is (note how the pointer is represented by the changing of the hat!):

But wait! There’s more! See more of your favorite computer sorting algorithms — BubbleSort, SelectSort, MergeSort, ShellSort, etc. — dancing their hearts out here:

http://www.youtube.com/user/AlgoRythmics?feature=watch