Essentials of Metaheuristics
by Sean Luke
Number of pages: 233
This is an open set of lecture notes on metaheuristics algorithms, intended for undergraduate students, practitioners, programmers, and other non-experts. It was developed as a series of lecture notes for an undergraduate course. The topics are short and light on examples and theory.
Home page url
Download or read it online for free here:
by Wolfgang Merkle - ESSLLI
The first part of the course gives an introduction to randomized algorithms and to standard techniques for their derandomization. The second part presents applications of the probabilistic method to the construction of logical models.
by Clifford A. Shaffer - Dover Publications
A comprehensive treatment focusing on the creation of efficient data structures and algorithms, explaining how to select the data structure best suited to specific problems. It uses Java programming language and is suitable for second-year courses.
A data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently. Contents of the book: Sequences; Dictionaries; Sets; Priority queues; Successors and neighbors; Integer and string searching.
by Jeff Erickson - University of Illinois at Urbana-Champaign
These are lecture notes, homework questions, and exam questions from algorithms courses the author taught at the University of Illinois. It is assumed that the reader has mastered the material covered in the first 2 years of a typical CS curriculum.