首页 > 代码库 > javascript数据结构和算法 一(本书组织结构)

javascript数据结构和算法 一(本书组织结构)

环境


我们在本书中使用的Javascript编程环境是基于SpiderMonkey 引擎的javascript shell.

第一章讲述了在你的环境中下载 shell的介绍.

其他的shell例如Nodejs同样可以工作,虽然你可能需要简单的改变下代码.

除了shell,唯一你要准备的就是文本编辑器.

 

本书的组织结构


第一章:javascript语言的概览,至少是在本书中使用的javascript的一些特征.这一章同时展示了在整本书中使用的一些编程风格.


第二章:讨论了在计算机科学中最通用的数据结构--数组,javascript,数组是内建的.


第三章:介绍第一个实现的数据结构--列表


第四章:包含了栈数据结构.栈在整个计算机科学的编译器和操作系统实现中都有使用.


第五章:讨论队列数据结构.队列就像是你站在银行或者小卖部门口排队的一种抽象.当模拟软件需要排列数据时,队列经常会被用到.


第六章:包含链表,链表是列表数据结构的修正.它的每个元素都是和其左右相连的分割的对象,链表是在进行多种多样的插入和删除的时候是非常高效的.


第七章:展示了如何建立和使用字典.(存储键值对的数据结构)


第八章:在构建字典的过程中,需要使用哈希表,该章节展示了如何建立哈希表和存储数据的哈希算法.


第九章:包含集合数据结构.在数据结构的书中,集合通常不被列在其中.但是在存储无重复数据时,他们将会非常有用.


第十章:该章节的主题是二叉树和二叉搜索树,就像之前提到的那样,当数据在存储时就已经进行了排序,那么二叉搜索树将会非常高效.


第十一章:包含图和图的算法.图被用来表示计算机网络或者地图上的城市的数据.


第十二章:从数据结构到算法,讨论各种排序算法,包括简单的容易实现但是对于大数据集合效率低的排序算法和复杂的,但是非常适合于大数据集合的算法.


第十三章:这次讨论的是顺序优先查询和二分查询算法.


第十四章:最后一章,我们讨论两个处理数据的高级算法:动态规划和贪婪算法.