I'm comfortable choosing sorting algorithms for a computer. Choosing a sorting algorithm for a human seems much harder.
For example, suppose you want to sort a shuffled deck cards. Quicksort seems too fiddly for a manual process with a relatively small (52) quantity.
miniblog.
Related Posts
Spent a bunch of time learning about text diffing algorithms this evening.
"Myers Algorithm" refers to a specific paper written by Eugene Myers, and he published faster algorithms later!
There's a class of performance bugs that you can feel.
Today I inadvertently implemented "Schlemiel the Painter's algorithm", and it's obvious: performance was great at first, and then it gradually deteriorates.
Today I learnt about a cunning trick used by GNU diff to make Myer's algorithm faster: https://github.com/mitsuhiko/similar/issues/15
If you do an initial pass to find items that only occur on one side, you can discard them before diffing! They'll always be shown as changed.