Sorting in General
As we found with the binary search,
our data needs to be sorted to be able use more
efficient methods of searching.
There are two categories of sorting  algs
Internal sorting requires that all of your data fit into
memory (an array or a LLL)
External sorting is used when your data can't fit into
memory all at once (maybe you have a very large
database), and so sorting is done using disk files.