Several algorithms are presented, including insertion sort,
shell sort, and quicksort. Sorting by insertion is the
simplest method, and doesn't require any additional storage. Shell sort
is a simple modification that improves performance significantly.
Probably the most efficient and popular method is quicksort, and is
the method of choice for large arrays.