Brennan Cain

Software Engineer

Programming Examples: Sorts Complete

Background

In any course of study in Computer Science and Engineering, sorts are one of the first topics covered, generally in data structures or a similar class. I first learned the simple sorts (Insertion and Selection) in high school. When I decided to begin this project, sorts were one of the first items for me to choose because of their prevalence in computing problems and also for their coolness.

What’d I do?

I implemented the following sorting algorithms in C++ and Python: insertion, selection, merge, heap, quick, bubble, comb, and radix. These are what can be considered a good toolset. Each algorithm has its merits and drawbacks, so having them all available in source will make it easy down the road if I need them again. I implemented the algorithms, designed a test suite, and for the C++ files, created a makefile.

What now?

I will continue working on my examples. The next on my checklist is data structures. I plan to implement a Heap, Linked List, Vector, Adjacency Graph, Stack, Queue, Hash Table, and Queap (Interesting priority queue).

sort_test
Test suite executed with all tests passing.
Previous Article
Next Article