Base/Knowledges/Библиотека/Книги/Алгоритмы на Java.md

3.8 KiB
Raw Blame History

Тип, Статус, Название, Автор, Количество страниц, Прогресс, Формат, Обложка, Начата, Закончена, Оценка, Сложность, Теги, Категории, Источник, Ссылка
Тип Статус Название Автор Количество страниц Прогресс Формат Обложка Начата Закончена Оценка Сложность Теги Категории Источник Ссылка
Книга Запланировано Алгоритмы на Java
Роберт Седжвик
Кевин Уэйн
848 0 Электронная Библиотека/Книги/covers/algoritmy-na-java.jpg
алгоритмы
структуры_данных
java
сортировка
графы
Программирование
Алгоритмы

Алгоритмы на Java

!covers/algoritmy-na-java.jpg

📖 О книге

Фундаментальный справочник Роберта Седжвика и Кевина Уэйна из Принстонского университета — 4-е издание классики алгоритмов с реализацией на Java. Охватывает структуры данных, алгоритмы сортировки, поиска, обработку графов и строк. Отличается чётким текстом, детальными иллюстрациями, тщательно выверенным кодом и упражнениями для всех уровней. Поддерживается сайтом algs4.cs.princeton.edu. «Диалектика», 2019.

🧠 Ключевые идеи

  • 50 алгоритмов, которые должен знать каждый программист: от базовых структур данных (стек, очередь, приоритетная очередь) до алгоритмов на графах — всё с реализацией на Java и анализом сложности
  • Сортировка во всех вариантах: сравнительная сортировка (mergesort, quicksort, heapsort), поразрядная сортировка — понимание компромиссов между алгоритмами критично для выбора правильного в конкретном контексте
  • Алгоритмы поиска: бинарные деревья поиска, красно-чёрные деревья, хеш-таблицы — основа любого высокопроизводительного приложения
  • Алгоритмы на графах: обход в глубину/ширину, кратчайшие пути (Dijkstra, Bellman-Ford), минимальное остовное дерево — фундамент для сетевых задач, маршрутизации, рекомендательных систем
  • Строковые алгоритмы: KMP, регулярные выражения, сжатие данных — специализированный раздел, редко охватываемый другими книгами по алгоритмам

💬 Важные цитаты

  • «Книга содержит необходимый объём знаний для программиста в области алгоритмов, накопленных за последние несколько десятилетий»
  • «50 алгоритмов, которые должен знать каждый программист»

💡 Как применить в моих проектах

🔗 Связанные заметки