Стоит ли читать «Алгоритмы на Java» Седжвика, если уже прочитал «Структуры данных и алгоритмы на Java» Лафоре?
================================================================================================================

 Всем привет!  
  

Хотелось бы понять, в чем принципиальная разница между книгами, рассматривает ли Седжвик какие-то темы, не вошедшие в книгу Лафоре (если да - то какие), и стоит ли тратить время и деньги на его книгу после прочтения Лафоре.  
  

Заранее спасибо за ответы. 

 Я после Лафоре читал Седжвика. Седжвик пишет намного понятнее (как код, так и теорию к нему). Лафоре объясняет "на пальцах", но с пробелами. Для объяснения сортировки массивов рисует футбольную команду, а сортировка Шелла там практически не описана, я не смог её понять и читать про неё в интернете. А вот у Седжвика параллельно описывается очень много нюансов и Java, и теории алгоритмов. Приводятся интересные примеры.  

Например, в дополнительной секции к одной из первых глав, где список задач для лучшего понимания, есть элементарная задача: написать метод, который вернет true, если все символы String'а циклично сдвинуть на несколько символов. И тут же пояснение: решение таких задач очень важно в изучении генных последовательностей.   
  

И там и там, к сожалению, есть опечатки. По субъективным ощущениям - у Лафоре они чаще сбивают с толку. У Седжвика, помню, была такая опечатка: "LIFO (первым вошел, последним вышел)". А у Лафоре я долго не мог понять схему стека (при том, что я знал, как он работает). В итоге я решил, что в этой картинке просто опечатка, и названия двух элементов перепутали между собой. 

 Книги рассматривают почти одно и то же. Достаточно прочесть одну.  

Алгоритмов и структур данных огромное множество и все виды в одну книгу не уместить.  

Есть базовый набор алгоритмов, которые должен знать каждый программист, и эту базу рассматривают в каждой книге.  

Главное запомнить что для многих задач есть готовые алгоритмы чтобы не городить тормозные велосипеды.