当前位置:网站首页>图书 > 正文 >>

学习JavaScript数据结构与算法(第3版)

图书信息

作者(巴西)洛伊安妮·格罗纳(Loiane Groner)
出版社人民邮电出版社有限公司
ISBN9787115510174
出版时间2019-05-01
字数22.8万
分类科技,计算机,网络,程序设计

读书简介

本书首先介绍了JavaScript语言的基础知识(包括ECMAScript和TypeScript),其次讨论了数组、栈、队列、双端队列和表等重要的数据结构,随后分析了集合、字典和散列表的工作原理,下来阐述了递归的原理、什么是树以及二叉堆和堆排序,然后介绍了图、DFS和BFS算法、各种排序(冒泡排序、选择排序、插排序、归并排序、快速排序、计数排序、桶排序和基数排序)和搜索(顺序搜索、二分搜索和内插搜索)算法以及随机算法,着介绍了分而治之、动态规划、贪心算法和回溯算法等高级算法以及函数式编程,*后还介绍了如何计算算法的复杂度。

目录

版权声明

前言

第 1 章 JavaScript简介

1.1 JavaScript数据结构与算法

1.2 环境搭建

1.3 JavaScript基础

1.4 控制结构

1.5 函数

1.6 JavaScript面向对象编程

1.7 调试工具

1.8 小结

第 2 章 ECMAScript和TypeScript概述

2.1 ECMAScript还是JavaScript

2.2 ECMAScript 2015+的功能

2.3 介绍TypeScript

2.4 小结

第 3 章 数组

3.1 为什么用数组

3.2 创建和初始化数组

3.3 添加元素

3.4 删除元素

3.5 在任意位置添加或删除元素

3.6 二维和多维数组

3.7 JavaScript的数组方法参考

3.8 类型数组

3.9 TypeScript中的数组

3.10 小结

第 4 章 栈

4.1 创建一个JavaScript数据结构和算法库

4.2 栈数据结构

4.3 创建一个基于JavaScript对象的Stack类

4.4 保护数据结构内部元素

4.5 用栈解决问题

4.6 小结

第 5 章 队列和双端队列

5.1 队列数据结构

5.2 双端队列数据结构

5.3 使用队列和双端队列来解决问题

5.4 小结

第 6 章 链表

6.1 链表数据结构

6.2 双向链表

6.3 循环链表

6.4 有序链表

6.5 创建StackLinkedList类

6.6 小结

第 7 章 集合

7.1 构建数据集合

7.2 创建集合类

7.3 集合运算

7.4 ECMAScript 2015——Set类

7.5 多重集或袋

7.6 小结

第 8 章 字典和散列表

8.1 字典

8.2 散列表

8.3 ES2015 Map类

8.4 ES2105 WeakMap类和WeakSet类

8.5 小结

第 9 章 递归

9.1 理解递归

9.2 计算一个数的阶乘

9.3 斐波那契数列

9.4 为什么要用递归?它更快吗

9.5 小结

第 10 章 树

10.1 树数据结构

10.2 树的相关术语

10.3 二叉树和二叉搜索树

10.4 树的遍历

10.5 搜索树中的值

10.6 自平衡树

10.7 小结

第 11 章 二叉堆和堆排序

11.1 二叉堆数据结构

11.2 堆排序算法

11.3 小结

第 12 章 图

12.1 图的相关术语

12.2 图的表示

12.3 创建Graph类

12.4 图的遍历

12.5 最短路径算法

12.6 最小生成树

12.7 小结

第 13 章 排序和搜索算法

13.1 排序算法

13.2 搜索算法

13.3 随机算法

13.4 小结

第 14 章 算法设计与技巧

14.1 分而治之

14.2 动态规划

14.3 贪心算法

14.4 回溯算法

14.5 函数式编程简介

14.6 小结

第 15 章 算法复杂度

15.1 大表示法

15.2 用算法娱乐身心

15.3 小结

看完了

推荐图书