valerikpunk · 15-Апр-15 18:32(10 лет 2 месяца назад, ред. 15-Апр-15 21:15)
Структуры данных и алгоритмы JAVA. 2-е издание Год: 2013 Автор: Роберт Лафоре Издательство: Питер ISBN: 978-5-496-00740-5 Серия: Классика Computer Science Язык: Русский Формат: PDF Качество: Отсканированные страницы + слой распознанного текста Интерактивное оглавление: Да Количество страниц: 704 Описание: Второе издание одной из самых авторитетных книг по программированию посвящено использованию структур данных и алгоритмов. Алгоритмы - это основа программирования, определяющая, каким образом разрабатываемое программное обеспечение будет использовать структуры данных. На четких и простых программных примерах автор объясняет эту сложную тему, предлагая читателям написать собственные программы и на практике освоить полученные знания. Рассматриваемые примеры написаны на языке Java, хотя для усвоения материала читателю не обязательно хорошо знать его - достаточно владеть любым языком программирования, например C++. Первая часть книги представляет собой введение в алгоритмизацию и структуры данных, а также содержит изложение основ объектно-ориентированного программирования. Следующие части посвящены различным алгоритмам и структурам данных, рассматриваемым от простого к сложному: сортировка, абстрактные типы данных, связанные списки, рекурсия, древовидные структуры данных, хеширование, пирамиды, графы. Приводятся рекомендации по использованию алгоритмов и выбору той или иной структуры данных в зависимости от поставленной задачи.
Книга читается очень легко. Я гуманитарий и мое знакомство с программированием началось с попытки постичь сортировку пузырьком. С помощью этой книги мне это удалось. А дальше все просто. Главное понять основы алгоритмизации. Книга великолепна.
69082739прекрасная книга!
все книги Лафоре очень легко и приятно читаются
автор умеет объяснить так, что и тупому становится понятно, таких авторов единицы (навскидку мои любимые: Петцольд Ч, Том Сван, Кент Бек, Фаулер М., Рэй Конопка, М. Кэнту, Ч. Калверт, Майерс Г., Д. Ван Тассел, Мартин Р., Дейкстра, Лишнер Р, Керниган Б, Плоджер, ... ), и Седжвику имхо далеко до него
Стр. 54 (по книге) / блок про удаление элемента массива / - счётчик кол-ва элементов массива уменьшается в любом случае, независимо от того, найден элемент, который нужно удалить, или не найден. Стр. 61 / метод public boolean delete(long value) / кривая реализация метода. Удаляя элемент массива во время выполнения ловим ArrayIndexOutOfBoundsException. Дальше читать не стал.
73056073Стр. 54 (по книге) / блок про удаление элемента массива / - счётчик кол-ва элементов массива уменьшается в любом случае, независимо от того, найден элемент, который нужно удалить, или не найден. Стр. 61 / метод public boolean delete(long value) / кривая реализация метода. Удаляя элемент массива во время выполнения ловим ArrayIndexOutOfBoundsException. Дальше читать не стал.
И зря.
1. На 55 странице, в абзаце про удаление, автор пишет: "Для простоты мы (оптимистично) предполагаем, что элемент в массиве присутствует."
2. Да, там действительно ошибка, следовало бы указать nElems - 1. Это кстати странно, потому что на 54 странице такой ошибки нет.
73056073Стр. 54 (по книге) / блок про удаление элемента массива / - счётчик кол-ва элементов массива уменьшается в любом случае, независимо от того, найден элемент, который нужно удалить, или не найден. Стр. 61 / метод public boolean delete(long value) / кривая реализация метода. Удаляя элемент массива во время выполнения ловим ArrayIndexOutOfBoundsException. Дальше читать не стал.
Отличное базовое пособие, рекомендую: читается и впитывается без особого труда; для понимания кода достаточно обладать даже неполными (средними) знаниями Java Core. В наличии единичные опечатки, идущие из оригинала (как во фрагменте с кодом огромного размера в предыдущем сообщении, где в первой строке вместо int должно быть double, но это очевидно из контекста. Бросать читать качественный источник из-за таких редких и отлавливаемых логикой опечаток - ну, для меня это слишком большая роскошь). Однако в переводе местами - впрочем, тоже очень нечасто - упущены важные нюансы, так что, как обычно, читаем перевод, имея под рукой оригинал.
GodNsk, прикольно, что ты это читал. Я тупо пролистал:) Что именно тебя возмутило? Что метод возвращает int? Косяк, согласен. А вот по остальному - такое. На момент выхода книги не было автоупаковки/распаковки, так что код имеет место быть.