uccser/cs-field-guide

View on GitHub
csfieldguide/chapters/content/en/algorithms/sections/further-reading.md

Summary

Maintainability
Test Coverage
# Further reading

- There is another searching algorithm which performs even better than binary search. It is called Hashing and can be investigated with the CS Unplugged [Battleships Game](http://csunplugged.org/searching-algorithms).
- There are some problems for which no good algorithms have been found (and many people believe they will never be found). For more on these kinds of algorithms see the Complexity and Tractability chapter in the Field Guide.

## Useful links

- [CS Unplugged Searching algorithms](http://csunplugged.org/searching-algorithms)
- CS Unplugged [Sorting algorithms](http://csunplugged.org/sorting-algorithms)
- [Searching algorithm game, may not be suitable](http://csunplugged.org/divideAndConquer)
- [Video series on Algorithms by Nested](https://www.youtube.com/playlist?list=PLPUZjuDvxs5OFPMjzjz13hq0yP7zJU6D2)
- Wikipedia has more details on [Linear Search](http://en.wikipedia.org/wiki/Linear_search), [Binary Search](http://en.wikipedia.org/wiki/Binary_search), [Selection sort](http://en.wikipedia.org/wiki/Selection_sort), [Insertion sort](http://en.wikipedia.org/wiki/Insertion_sort), [Quicksort](http://en.wikipedia.org/wiki/Quicksort), and [Timsort](http://en.wikipedia.org/wiki/Timsort).
- The [Sorting Bricks game](http://mathsite.math.berkeley.edu/sorting/brick.html) is a great way to learn about several sorting algorithms (requires Java).
- [Sorting Algorithms Visualisations](http://www.sorting-algorithms.com/) shows several different sorting algorithms racing and contains information and pseudocode for each.
- [Beginner's Guide to Big O Notation](http://rob-bell.net/2009/06/a-beginners-guide-to-big-o-notation/)