Computer Science: основы программирования на Java, ООП, алгоритмы и структуры данных

Computer Science: основы программирования на Java, ООП, алгоритмы и структуры данных
sku: 136186798
ACCORDING TO OUR RECORDS THIS PRODUCT IS NOT AVAILABLE NOW
1,233.00 грн.
Shipping from: Ukraine
   Description
[html]«Наша главная цель — дать конкретные знания и навыки, необходимые для разработки эффективных решений любой задачи по программированию. »Роберт Седжвик и Кевин Уэйн Преподаватели Принстонского университета Роберт Седжвик и Кевин Уэйн создали универсальное введение в Computer Science на языке Java, которое идеально подходит как студентам, так и профессионалам. В книге "Computer Science: основы программирования на Java, ООП, алгоритмы и структуры данных" вы начнете с основ, освоите современный курс объектно-ориентированного программирования, и перейдете к концепциям более высокого уровня: алгоритмам и структурам данных, теории вычислений и архитектуре компьютеров.И главное — вся теория рассматривается на практических и ярких примерах: прикладная математика, физика и биология, числовые методы, визуализация данных, синтез звука, обработка графики, финансовое моделирование и многое другое.Оглавление книги Роберт Седжвик и Кевин Уэйн "Computer Science: основы программирования на Java, ООП, алгоритмы и структуры данных"Предисловие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16От научного редактора русского издания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23От издательства . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24Глава 1. Основы программирования . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251.1. Ваша первая программа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341.2. Встроенные типы данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Вопросы и ответы (строки) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Вопросы и ответы (целые числа) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Вопросы и ответы (числа с плавающей точкой) . . . . . . . . . . . . . . . . . . . . . . . 60Вопросы и ответы (переменные и выражения) . . . . . . . . . . . . . . . . . . . . . . . . 61Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631.3. Условные переходы и циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 991.4. Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1361.5. Ввод и вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1781.6. Пример: случайный серфинг . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Упражнения повышенной сложности. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198Глава 2. Функции и модули . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1992.1. Определение функций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2282.2. Библиотеки и клиенты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2632.3. Рекурсия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2962.4. Пример: задача о протекании . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323Глава 3. Объектно-ориентированное программирование . . . . . . . . . . . . . . 3263.1. Использование типов данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3723.2. Создание типов данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4153.3. Проектирование типов данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462Упражнения по проектированию типов данных . . . . . . . . . . . . . . . . . . . . . . . 463Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4653.4. Пример: моделирование задачи n тел . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478Глава 4. Алгоритмы и структуры данных . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4794.1. Быстродействие . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5124.2. Сортировка и поиск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5444.3. Стеки и очереди . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593Упражнения для связных списков . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5974.4. Таблицы символов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635Упражнения для бинарных деревьев . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 639Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6404.5. Пример: феномен «тесного мира» . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683Глава 5. Теория вычислений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6875.1. Формальные языки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 690Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7345.2. Машины Тьюринга . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 752Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7555.3. Универсальность . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7685.4. Вычислимость . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7895.5. Вычислительная сложность . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790Главный вопрос . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835Глава 6. Вычислительная машина . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8386.1. Представление информации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 866Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 867Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 870Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8736.2. Машина TOY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8976.3. Программирование на машинном языке . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9216.4. Виртуальная машина TOY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 943Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 945Глава 7. Построение вычислительного устройства . . . . . . . . . . . . . . . . . . . 9487.1. Булева логика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 949Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9617.2. Базовая модель электронной схемы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9727.3. Комбинационные схемы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 973Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10077.4. Последовательностные схемы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10307.5. Цифровые вычислительные устройства . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031Вопросы и ответы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052Упражнения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053Упражнения повышенной сложности . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1053Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054Глоссарий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1066[/html]
   Technical Details
categoryTitle: Научная и техническая литература
rating: 0
   Price history chart & currency exchange rate

Customers also viewed