数据结构与算法分析:C++语言描述(英文版·第4版)
作 者:(美)马克·艾伦·维斯 著
定 价:129.9
出 版 社:人民邮电出版社
出版日期:2022年02月01日
页 数:636
装 帧:平装
ISBN:9787115580924
1. 用C++新标准C++11的代码讲数据结构和算法分析;
2. 作者所写的数据结构和算法分析书籍销量好,好评多,已被世界上很多大学用作教材。
本书是数据结构和算法分析领域的经典教材。全书以C++作为具体的实现语言,介绍了表、栈、队列、树、哈希表、优先队列、排序、不相交集算法、图论算法、算法分析、算法设计、摊还分析、查找树算法、后缀数组、后缀树、k-d树、配对堆等内容。本书把算法分析和C++程序的开发有机结合起来,深入剖析每种算法,内容全面、缜密严谨,还详细讲解了精心构建程序的方法。本书可作为高等院校计算机相关专业的教学用书或参考用书,也可供计算机领域的工程技术人员参考。
Mark Allen Weiss,佛罗里达国际大学计算与信息科学学院教授、副院长,本科教育主任和研究生教育主任。他于1987年获得普林斯顿大学计算机科学博士学位,师从Bob Sedgewick。他曾经担任全美AP(Advanced Placement)考试计算机学科委员会的主席(2000-2004)。Weiss教授在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的书籍,受到广泛好评.已被世界500余所大学用作教材。
Chapter 1 Programming: A General Overview/第1章 程序设计:概述
1.1 What's This Book About/本书讨论的内容
1.2 Mathematics Review/数学知识复习
1.2.1 Exponents/指数
1.2.2 Logarithms/对数
1.2.3 Series/级数
1.2.4 Modular Arithmetic/模运算
1.2.5 The P Word/证明方法
1.3 A Brief Introduction to Recursion/递归简论
1.4 C++ Classes/C类
1.4.1 Basic class Syntax/基本的class语法
1.4.2 Extra Constructor Syntax and Accessors/构造函数的附加语法和访问函数
1.4.3 Separation of Interface and Implementation/接口与实现的分离
1.4.4 vector and string/vector类和string类
1.5 C++Details/C细节
1.5.1 Pointers/指针
1.5.2 Lvalues, Rvalues, and References/左值、右值和引用
1.5.3 Parameter Passing/参数传递
1.5.4 Return Passing/返回值传递
1.5.5 std::swap and std::move/std::swap和std::move
1.5.6 The Big-Five: Destructor, Copy Constructor, Move Constructor, Copy Assignment operator=, Move Assignment operator=/五大函数:析构函数、拷贝构造函数、移动构造函数、拷贝赋值operator=和移动赋值operator=
1.5.7 C-style Arrays and Strings/C风格数组和字符串
1.6 Templates/模板
1.6.1 Function Templates/函数模板
1.6.2 Class Templates/类模板
1.6.3 Object, Comparable, and an Example/Object、Comparable和一个例子
1.6.4 Function Objects/函数对象
1.6.5 Separate Compilation of Class Templates/类模板的分离式编译
1.7 Using Matrices/使用矩阵
1.7.1 The Data Members, Constructor, and Basic Accessors/数据成员、构造函数和基本访问函数
1.7.2 operator[]/operator[]
1.7.3 Big-Five/五大函数
Summary/小结
Exercises/练习
References/参考文献
Chapter 2 Algorithm Analysis/第2章 算法分析
2.1 Mathematical Background/数学基础
2.2 Model/模型
2.3 What to Analyze/要分析的问题
2.4 Running-Time Calculations/运行时间计算
2.4.1 A Simple Example/一个简单的例子
2.4.2 General Rules/一般法则
2.4.3 Solutions for the Maximum Subsequence Sum Problem/优选子序列和问题的求解
2.4.4 Logarithms in the Running Time/运行时间中的对数
2.4.5 Limitations of Worst-Case Analysis/最坏情形分析的局限性
Summary/小结
Exercises/练习
References/参考文献
Chapter 3 Lists, Stacks, and Queues/第3章 表、栈和队列
3.1 Abstract Data Types (ADTs)/抽象数据类型
3.2 The List ADT/表的抽象数据类型
3.2.1 Simple Array Implementation of Lists/表的简单数组实现
……
Chapter 4 Trees/第4章 树
Chapter 5 Hashing/第5章 哈希
Chapter 6 Priority Queues (Heaps)/第6章 优先队列(堆)
Chapter 7 Sorting/第7章 排序
Chapter 8 The Disjoint Sets Class/第8章 不相交集算法
Chapter 9 Graph Algorithms/第9章 图论算法
Chapter 10 Algorithm Design Techniques/第10章 算法设计技巧
Chapter 11 Amortized Analysis/第11章 摊还分析
Chapter 12 Advanced Data Structures and Implementation/第12章 高级数据结构及其实现
Appendix A Separate Compilation of Class Templates/附录A 类模板的分离式编译
A.1 Everything in the Header/头文件中的内容
A.2 Explicit Instantiation/显示实例化