IB Extended Essay: An empirical comparison of the runtime of five sorting algorithms

An International Baccalaureate Extended Essay comparing five different sorting algorithms. Describes and implements each algorithm, then times them when sorting lists of integers of different lengths. Programmed in Python.

The essay itself is licensed under the Creative Commons BY-NC-SA license. The source code used in the essay is licensed under the GNU GPL.


Download original PDF

  • Horseface-san

    Haha, I think this must be the first EE I’ve seen that was not boring :P I don’t use sorting algorithms (Or at least I’m not working on anything that’s gonna use ’em) but it’s interesting to get to know them, didn’t know how Shell and Insertion sort worked until I read this.

    And I don’t use python either but the timeit module looks really interesting, especially with the really precise measurements it gives (dunno if they’re *accurate* to that many decimal places though lol), but anyways, it beats the C/C++ timers by a large margin so I might give it a try the next time I wanna time some process ^^

    Thanks for the useful stuff I guess ;)

  • Student

    Hello, I’m considering writing an IB EE on Computer Science and your EE seems to be a good sample, can you tell me what mark you got for it, please? :)

    • I got an A but that was almost 7 years ago (wow, now I feel old :) ) so I’m not sure if anything has changed since then.