Hacker News Comments on
What different sorting algorithms sound like
andrut
·
Youtube
·
242
HN points
·
2
HN comments
- This course is unranked · view top recommended courses
Hacker News Stories and Comments
All the comments and stories posted to Hacker News that reference this video.Add audio - http://www.youtube.com/watch?v=t8g-iYGHpEA :-)
Here's what different sorting algorithms sound like - http://www.youtube.com/watch?v=t8g-iYGHpEABubble sort takes the most time. :)
⬐ InclinedPlaneOnly because bogosort wasn't tried.
⬐ IsamuAnd people say bubble sort isn't any good. I suppose they haven't HEARD it yet?
⬐ momokatteThis makes me want to sort something. The loose change strewn all over my desk. The contents of my fridge. The words on this page. Anything.⬐ petdog⬐ hyyyprAnything. The The The This all change contents desk. fridge. loose makes me my my of on over page. something. sort strewn this to want words⬐ jacquesmall Anything. change contents desk. fridge. loose makes me my my of on over page. something. sort strewn The The The This this to want wordsAwesome link. It reminds me of a website showing a matrix with visualizations of several sorting algorithms: http://www.sorting-algorithms.com/ (which was posted somewhere here iirc).⬐ ramkiwhere is quicksort?⬐ jacquesm⬐ tfmorrisToo fast to hear.But nice to look at:
⬐ sesquBullshit on the too fast. Mergesort never needs more comparisons than quicksort, and mergesort was featured.⬐ jacquesmErrm. Yes. I know that. It was a joke...⬐ sesqu⬐ jemfinchI've noticed that we don't share the same sense of humour.Generally speaking, I've seen too many people assert that quicksort is blazingly fast to believe all of them were joking. It doesn't particularly help that the major sorting algorithms are severely fragmented, because people optimize variously for stability, time, space, comparisons, swaps, cache locality, parallelizability, best case, worst case, average case, amortized average case, arrays, lists, integers, objects...
⬐ jacquesmquicksort has very bad performance on the wrong data.But on the kind of data that the test showed it would perform more or less on par with merge sort. To suggest that quick sort would be that much faster than merge sort that you couldn't hear it when there are obviously quite a few steps is to me more than enough reason to assume a joke rather than a serious answer.
Anyway, humour is a hard thing to get across online, I should have added a ;) at a minimum apologies for that, also HN seems to frown on humor (even though every now and then there are some really good jokes here http://news.ycombinator.com/item?id=1597571 ) this one was reasonably lame but the subject wasn't all that serious to begin with.
Sorting is enough of an issue that Knuth devoted the better part of a very thick book to it and to this day there are plenty of people that think that 'one size fits all'.
The more you know about your data the faster you can sort it.
Merge sort may use an optimal number of comparisons, but that doesn't stop it from being slower than quicksort in most cases in real life.Interesting, but not new. Mark Brown did this two decades ago at DEC SRC (and probably others before him). http://www.hpl.hp.com/techreports/Compaq-DEC/SRC-RR-76A.html⬐ hubbi know the choice of sounds was arbitrary, but it nonetheless reminded me of the seal calls of 'encounters at the end of the world': http://www.youtube.com/watch?v=SORza1fqQGk⬐ snprbob86That was super cool! I really enjoyed how my brain started matching the sound and the bar heights in such a way that by the end I said "of course that one sounds like that".⬐ ysorter78See another experiment: http://www.youtube.com/watch?v=ol5ml9e2THwIt sonifies the following algorithms (from http://www.algolist.net/Algorithms/ ) - Bubble sort - Selection sort - Insertion sort - Quicksort
You can also see their sonograms.
⬐ meatmanekWhat, no quick sort? And no heap sort?⬐ Batsu⬐ SynaesthesiaThere was a link to the heapsort at the end: http://www.youtube.com/watch?v=iXAjiDQbPSw⬐ moultanoThat is by far the coolest sounding of the bunch.I think Mathematica can be used to make "audiolizations" really easily. They include one of the Riemman Zeta function as a demo. It sounds really cool (sorry I can't find a link, I'll try upload it)⬐ keyleThat was really cool. Is the speed indicative of the speed of the sort?⬐ frio⬐ jassadatGiven that the width of the elements being sorted changes (therefore there are more/less elements in different visualisations), I'd say no.⬐ simonistaI'm not sure, but the visual part of the videos looks a lot like visualizations I've seen in algorithms classes where the speed does represent the speed of the sort. So I'd guess that it does here as well.These are really great. As a musical person it engrained these concepts that much deeper for me. My wife, who is not much of a computer science person like the merge sort the best.
⬐ mr_twjI would say it's likely. There are all sorts (pun intended) of optimizations you can do for each algorithm, but at the textbook level, I could say they seemed typical as far as speed expectancy goes. My rough estimates for the times were (in seconds): insert: ~10, bubble: ~27, selection: ~18, merge: ~17, and gnome: ~19. I have only written inserts, bubbles, and selections; with bubble being slowest and insert being the fastest, my limited experience agrees with the video. Note: the merge algorithm appeared to have sorted a different data set.Here is a live version of the sounds of various sorting algorithms. Done using HTML 5 audio - http://bit.ly/sort-sound⬐ muyyatinIt would be interesting to listen to graph algorithms.⬐ scotth⬐ ralphWhat do you imagine would determine frequency?⬐ muyyatinFor example in depth first search, the depth.⬐ dhsI like that. And in breadth first search, one could use a filter on a saw wave to have the breadth of the frequency spectrum manipulated by the search.Why does the bubble sort continue to the end of the array on every pass, when it could stop one earlier each time?⬐ mhansenThere's a lot of effort been put in to this, I like it.I love that you can hear the bubbling in bubble sort :D
⬐ marktucker⬐ TechnophilisI noticed that too! Good stuff.Merge sort's sound is actually recursive.⬐ LucAt times this sounds a lot like an old Williams shoot'em-up arcade game, like Defender for example.⬐ vijaydevCool job! Gnome Sort - now that's new to me!⬐ willvarfarbubble sort sounds like someone chanting "DEVELOPERS! DEVELOPERS! DEVELOPERS!" !!!! :D⬐ pavs⬐ transmit101http://www.youtube.com/watch?v=KMU0tzLwhbEDisclaimer: sorting algorithms can sound like just about anything, depending which parameters you map to which sounds.This is just a simple example of data sonification, albeit with some nice visualisation too, and a subject matter which appeals to the computer scientists in the room.
⬐ TichyI thought the values to be sorted would be the amplitude of the sound wave, and the value currently touched by the algorithm would be played in each step.Of course you could still pick arbitrary values and arbitrary start orderings.
⬐ noncee22343No. Under some simple guidelines, which the model follows, the sorting algorithms won't sound like just about anything.If you sort random permutations of the values [1, n], and map some monotonic property to the values, then not only are there provably some sounds which certain algorithms make that others don't, but more generally there are 'average case' signatures for each algorithm that give them their own recognizable cadences, and that is exactly what this video is demonstrating.
That you can use a 'boop' or a 'beep' or 'buzz' or invert the monotonicity is obvious and irrelevant.