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

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

Computer Science. Основы программирования на Java, ООП, алгоритмы и структуры данных
Автор: Седжвик Роберт, Уэйн Кевин
Дата выхода: 2018
Издательство: Питер
Количество страниц: 1074
Размер файла: 75.8 MB
Тип файла: PDF
Добавил: M4n4d
 Проверить на вирусы

Оглавление....7

Список листингов ....12

Предисловие....17

От научного редактора русского издания....24

От издательства....25

Глава 1. Основы программирования....26

1.1. Ваша первая программа....26

Вопросы и ответы....33

Упражнение....35

1.2. Встроенные типы данных....36

Выводы....58

Вопросы и ответы (строки)....58

Вопросы и ответы (целые числа)....59

Вопросы и ответы (числа с плавающей точкой)....61

Вопросы и ответы (переменные и выражения)....62

Упражнения....64

1.3. Условные переходы и циклы....69

Выводы....96

Вопросы и ответы....97

Упражнения....100

1.4. Массивы....107

Выводы....132

Вопросы и ответы....133

Упражнения....134

Упражнения повышенной сложности....137

1.5. Ввод и вывод....141

Выводы....173

Вопросы и ответы....173

Упражнения....175

Упражнения повышенной сложности....179

1.6. Пример: случайный серфинг....181

Выводы....196

Упражнения....197

Упражнения повышенной сложности....199

Глава 2. Функции и модули....200

2.1. Определение функций....201

Вопросы и ответы....225

Упражнения....226

Упражнения повышенной сложности....229

2.2. Библиотеки и клиенты....232

Вопросы и ответы....261

Упражнения....261

Упражнения повышенной сложности....264

2.3. Рекурсия....266

Выводы....293

Вопросы и ответы....294

Упражнения....295

Упражнения повышенной сложности....297

2.4. Пример: задача о протекании....301

Выводы....319

Вопросы и ответы....322

Упражнения....323

Упражнения повышенной сложности....324

Глава 3. Объектно-ориентированное программирование....327

3.1. Использование типов данных....328

Вопросы и ответы....366

Упражнения....370

Упражнения повышенной сложности....373

3.2. Создание типов данных....376

Вопросы и ответы....410

Упражнения....412

Упражнения повышенной сложности....416

3.3. Проектирование типов данных....421

Вопросы и ответы....460

Упражнения....463

Упражнения по проектированию типов данных....464

Упражнения повышенной сложности....466

3.4. Пример: моделирование задачи п тел....468

Вопросы и ответы....478

Упражнения....478

Упражнения повышенной сложности....479

Глава 4. Алгоритмы и структуры данных....480

4.1. Быстродействие....481

Выводы....505

Вопросы и ответы....506

Упражнения....508

Упражнения повышенной сложности....513

4.2. Сортировка и поиск....516

Выводы....540

Вопросы и ответы....542

Упражнения....543

Упражнения повышенной сложности....545

4.3. Стеки и очереди....548

Вопросы и ответы....591

Упражнения....594

Упражнения для связных списков....597

Упражнения повышенной сложности....598

4.4. Таблицы символов....603

Вопросы и ответы....635

Упражнения....636

Упражнения для бинарных деревьев....640

Упражнения повышенной сложности....641

4.5. Пример: феномен «тесного мира»....647

Выводы....677

Вопросы и ответы....679

Упражнения....680

Упражнения повышенной сложности....684

Глава 5. Теория вычислений....688

5.1. Формальные языки....691

Выводы....730

Вопросы и ответы....731

Упражнения....732

Упражнения повышенной сложности....735

5.2. Машины Тьюринга....738

Вопросы и ответы....753

Упражнения....753

Упражнения повышенной сложности....756

5.3. Универсальность....756

Вопросы и ответы....768

Упражнения повышенной сложности....769

5.4. Вычислимость....775

Вопросы и ответы....788

Упражнения....789

Упражнения повышенной сложности....790

5.5. Вычислительная сложность....791

Главный вопрос....810

Вопросы и ответы....828

Упражнения....830

Упражнения повышенной сложности....836

Глава 6. Вычислительная машина....839

6.1. Представление информации....840

Выводы....867

Вопросы и ответы....868

Упражнения....871

Упражнения повышенной сложности....874

6.2. Машина TOY....875

Вопросы и ответы....897

Упражнения....898

6.3. Программирование на машинном языке....901

Вопросы и ответы....916

Упражнения....917

Упражнения повышенной сложности....922

6.4. Виртуальная машина TOY....924

Вопросы и ответы....944

Упражнения....945

Упражнения повышенной сложности....946

Глава 7. Построение вычислительного устройства....949

7.1. Булева логика....950

Упражнения....961

Упражнения повышенной сложности....962

7.2. Базовая модель электронной схемы....964

Вопросы и ответы....972

Упражнения....973

7.3. Комбинационные схемы....974

Вопросы и ответы....1005

Упражнения....1005

Упражнения повышенной сложности....1008

7.4. Последовательностные схемы....1011

Выводы....1026

Вопросы и ответы....1028

Упражнения....1029

Упражнения повышенной сложности....1031

7.5. Цифровые вычислительные устройства....1032

Вопросы и ответы....1053

Упражнения....1054

Упражнения повышенной сложности....1054

Заключение....1055

Глоссарий....1058

API....1067

Преподаватели Принстонского университета Роберт Седжвик и Кевин Уэйн создали универсальное введение в Computer Science на языке Java, которое идеально подходит как студентам, так и профессионалам. Вы начнете с основ, освоите современный курс объектно-ориентированного программирования, и перейдете к концепциям более высокого уровня: алгоритмам и структурам данных, теории вычислений и архитектуре компьютеров.

И главное — вся теория рассматривается на практических и ярких примерах: прикладная математика, физика и биология, числовые методы, визуализация данных, синтез звука, обработка графики, финансовое моделирование и многое другое.

«Наша главная цель — дать конкретные знания и навыки, необходимые для разработки эффективных решений любой задачи по программированию. »

Роберт Седжвик и Кевин Уэйн


Похожее:

Список отзывов:

Нет отзывов к книге.