ACM SIGACT News
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Design and analysis of algorithms reconsidered
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Algorithm Design
Algorithms
Sorting algorithms as special cases of a priority queue sort
Proceedings of the 42nd ACM technical symposium on Computer science education
Hi-index | 0.00 |
A common approach to teaching algorithms involves describing algorithms first and then proving their correctness afterwards. In this article we advocate a "derivation-first" approach in which algorithms are "derived," either from basic concepts or from simpler algorithms, before they are proved correct. We demonstrate how a number of "classical" algorithms can be derived, providing students with a more intellectually satisfying experience, a deeper intuition into how algorithm design works, and connections between algorithms that can be useful in developing algorithms for other problems.