Searching for Data
Searching algorithms will typically be
modularized into their own function(s)...which
will have two input arguments:
(1) The key to search for (target)
(2) The list to search
and, two output arguments:
(1) A boolean indicating success or failure (did we find
a match?)
(2) The location in the list where the target was found;
generally if the search was not successful the location
returned is some undefined value and should not be
used.