最新公告
  • 欢迎您光临源码库,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入
  • 学习Ja vaSc ript数据结构与算法(第2版)_前端开发教程

    资源名称:学习Ja vaSc ript数据结构与算法(第2版)

    内容简介:

    本书首先介绍了Javascript 语言的基础知识以及ES6 和ES7 中引入的新功能,接下来讨论了数组、栈、队列、链表、集合、字典、散列表、树、图等数据结构,之后探讨了各种排序和搜索算法,包括冒泡排序、选择排序、插入排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序、顺序搜索、二分搜索,然后介绍了动态规划和贪心算法等常用的高级算法以及函数式编程,最后还介绍了如何计算算法的复杂度。

    资源目录:

    第1章 Javascript简介  1

    1.1 Javascript数据结构与算法  1

    1.2 环境搭建  2

    1.2.1 最简单的环境搭建  2

    1.2.2 使用Web服务器(XAMPP)  4

    1.2.3 使用Node.js搭建Web服务器  5

    1.3 Javascript基础  6

    1.3.1 变量  7

    1.3.2 操作符  9

    1.3.3 真值和假值  11

    1.3.4 相等操作符(==和===)  12

    1.4 控制结构  14

    1.4.1 条件语句  14

    1.4.2 循环  15

    1.5 函数  16

    1.6 Javascript面向对象编程  17

    1.7 调试工具  18

    1.8 ECMAscript概述  19

    1.9 ECMAscript 6的功能  21

    1.9.1 用let替代var声明变量  21

    1.9.2 常量  23

    1.9.3 模板字面量  23

    1.9.4 箭头函数  24

    1.9.5 函数的参数默认值  24

    1.9.6 声明展开和剩余参数  25

    1.9.7 使用类进行面向对象编程  27

    1.10 ECMAscript 7的功能  29

    1.11 小结  30

    第2章 数组  31

    2.1 为什么用数组  31

    2.2 创建和初始化数组  32

    2.3 添加元素  33

    2.3.1 使用push方法  33

    2.3.2 插入元素到数组首位  34

    2.4 删除元素  34

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

    2.6 二维和多维数组  36

    2.6.1 迭代二维数组的元素  37

    2.6.2 多维数组  38

    2.7 Javascript的数组方法参考  39

    2.7.1 数组合并  39

    2.7.2 迭代器函数  40

    2.7.3 ECMAscript 6和数组的新功能  42

    2.7.4 排序元素  46

    2.7.5 搜索  48

    2.7.6 输出数组为字符串  49

    2.8 类型数组  50

    2.9 小结  51

    第3章 栈  52

    3.1 栈数据结构  52

    3.1.1 创建栈  53

    3.1.2 向栈添加元素  53

    3.1.3 从栈移除元素  53

    3.1.4 查看栈顶元素  54

    3.1.5 检查栈是否为空  54

    3.1.6 清空和打印栈元素  54

    3.2 ECMAscript 6和Stack类  56

    3.3 用栈解决问题  59

    3.4 小结  61

    第4章 队列  62

    4.1 队列数据结构  62

    4.2 创建队列  63

    4.2.1 向队列添加元素  63

    4.2.2 从队列移除元素  63

    4.2.3 查看队列头元素  64

    4.2.4 检查队列是否为空  64

    4.2.5 打印队列元素  64

    4.3 用ECMAscript 6语法实现的Queue类  66

    4.4 优先队列  66

    4.5 循环队列——击鼓传花  68

    4.6 Javascript任务队列  70

    4.7 小结  70

    第5章 链表  71

    5.1 链表数据结构  71

    5.2 创建链表  72

    5.2.1 向链表尾部追加元素  73

    5.2.2 从链表中移除元素  75

    5.2.3 在任意位置插入元素  77

    5.2.4 实现其他方法  79

    5.3 双向链表  82

    5.3.1 在任意位置插入新元素  82

    5.3.2 从任意位置移除元素  85

    5.4 循环链表  87

    5.5 小结  88

    第6章 集合  89

    6.1 构建数据集合  89

    6.2 创建集合  89

    6.2.1 has(value)方法  90

    6.2.2 add方法  91

    6.2.3 remove和clear方法  91

    6.2.4 size方法  92

    6.2.5 values方法  93

    6.2.6 使用Set类  93

    6.3 集合操作  94

    6.3.1 并集  94

    6.3.2 交集  95

    6.3.3 差集  97

    6.3.4 子集  98

    6.4 ES6——Set类  99

    6.5 小结  101

    第7章 字典和散列表  102

    7.1 字典  102

    7.1.1 创建字典  102

    7.1.2 使用Dictionary类  105

    7.2 散列表  106

    7.2.1 创建散列表  106

    7.2.2 使用HashTable类  108

    7.2.3 散列表和散列集合  109

    7.2.4 处理散列表中的冲突  109

    7.2.5 创建更好的散列函数  117

    7.3 ES6——Map类  118

    7.4 ES6——WeakMap类和WeakSet类  118

    7.5 小结  119

    第8章 树  120

    8.1 树数据结构  120

    8.2 树的相关术语  121

    8.3 二叉树和二叉搜索树  121

    8.3.1 创建BinarySearchTree类  122

    8.3.2 向树中插入一个键  123

    8.4 树的遍历  126

    8.4.1 中序遍历  126

    8.4.2 先序遍历  127

    8.4.3 后序遍历  128

    8.5 搜索树中的值  129

    8.5.1 搜索最小值和最大值  130

    8.5.2 搜索一个特定的值  131

    8.5.3 移除一个节点  133

    8.6 自平衡树  137

    8.6.1 Adelson-Velskii-Landi树(AVL树)  137

    8.6.2 更多关于二叉树的知识  143

    8.7 小结  143

    第9章 图  144

    9.1 图的相关术语  144

    9.2 图的表示  146

    9.2.1 邻接矩阵  146

    9.2.2 邻接表  147

    9.2.3 关联矩阵  148

    9.3 创建Graph类  148

    9.4 图的遍历  150

    9.4.1 广度优先搜索  151

    9.4.2 深度优先搜索  156

    9.5 最短路径算法  162

    9.5.1 Dijkstra算法  163

    9.5.2 Floyd-Warshall算法  165

    9.6 最小生成树  166

    9.6.1 Prim算法  166

    9.6.2 Kruskal算法  168

    9.7 小结  169

    第10章 排序和搜索算法  170

    10.1 排序算法  170

    10.1.1 冒泡排序  171

    10.1.2 选择排序  174

    10.1.3 插入排序  175

    10.1.4 归并排序  176

    10.1.5 快速排序  179

    10.1.6 堆排序  183

    10.1.7 计数排序、桶排序和基数排序(分布式排序)  186

    10.2 搜索算法  187

    10.2.1 顺序搜索  187

    10.2.2 二分搜索  187

    10.3 小结  189

    第11章 算法模式  190

    11.1 递归  190

    11.1.1 Javascript调用栈大小的限制  191

    11.1.2 斐波那契数列  191

    11.2 动态规划  193

    11.2.1 最少硬币找零问题  194

    11.2.2 背包问题  196

    11.2.3 最长公共子序列  198

    11.2.4 矩阵链相乘  200

    11.3 贪心算法  202

    11.3.1 最少硬币找零问题  203

    11.3.2 分数背包问题  204

    11.4 函数式编程简介  205

    11.4.1 函数式编程与命令式编程  205

    11.4.2 ES2015和函数式编程  206

    11.4.3  Javascript函数式工具箱——map、filter和reduce  207

    11.4.4 Javascript函数式类库和数据结构  209

    11.5 小结  209

    第12章 算法复杂度  210

    12.1 大O表示法  210

    12.1.1 理解大O表示法  210

    12.1.2 时间复杂度比较  212

    12.1.3 NP完全理论概述  214

    12.2 用算法娱乐身心  216

    12.3 小结  217

    资源截图:

    学习Ja vaSc ript数据结构与算法(第2版)_前端开发教程插图源码资源库

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

    源码资源库 » 学习Ja vaSc ript数据结构与算法(第2版)_前端开发教程