Title: The Notes for the Course of Algorithms by David Mount
Authors: David Mount
The Notes for the Course of Algorithms by David Mount has its focus on how to design good algorithms, which is about the mathematical theory behind the design of good programmes.
The book also gives a good understanding and explains the design of an algorithm as a well-described computational process that takes a few values input and produces a few values as output. Like a cooking recipe, an algorithm provides a step-by-step technique for fixing a computational problem.
The book encompasses three major sections on mathematical tools essential for the evaluation of algorithms focusing asymptotics, summations, recurrences. This book also talks about the algorithmic problem of sorting a list of numbers.
The context shows a number of distinct techniques for sorting and use this problem to observation in different techniques for designing and reading algorithms.
It also introduces a group of diverse algorithmic problems and solution strategies and the idea of NP-completeness. NP-complete problems are those for which no efficient algorithms are recognized, however, nobody knows for sure whether solutions may exist.