# 00-开篇

# 【JavaScript数据结构与算法】

  • 1【JavaScript数据结构系列】
  • 2【JavaScript算法系列】

# 【JavaScript数据结构系列】开篇总览

大家都知道,学习编程,基础很重要。
数据结构,就是很其中重要的一项。

本系列是个人在学习过程中的记录总结实践分享,
也希望对想要学习这方面的你,有所助益。

大白话模式开扯。

# 什么是数据结构

Data Structure

数据结构就是对数据的一种存储和组织方式,
具有某些特点,施加某些限制,
满足一些场景的需求,
是具体需求场景下根据其特点抽象出来的。

比如最直接的例子,

  • 去食堂打饭
  • 去银行/营业厅办理业务
  • 去美发店理发

特点就是排队,从去的早的开始依次先处理。
这里就用到了队列(Queue)。
针对VIP客户这种情况,有优先队列。

# 数据结构有什么用

当然是更高效方便地解决对数据的处理需求。
存储组织/插入删除/查找定位/修改替换等

# 本系列的计划

常用的数据结构都会涉及到,

  • JS中封装提供的
    • Array数组
    • Set集合
    • Map字典

JS中提供的,是其封装过的,
并不是原始的数据结构,
以学习API使用为主,
不做过多介绍。

  • JS未提供,自己做封装的
    • Stack栈
    • Queue队列
    • LinkedList链表
    • HashTable哈希表
    • Tree树
    • Graph图

既然是JavaScript数据结构,自然要用JS语言来实现。

示例代码可能会不完整,
也会照顾读者不使用新的语法,
只求能够说明数据结构及实现,
另外打算用最新语法实现一遍,
做成包发布到npm,说不定就有人用到呢。


附一张思维脑图总结

*基于数组实现的哈希表

Last Updated: 2019-12-2 14:01:15

~扫码关注<码路工人>了吗?~

~关注公众号可以第一时间获取最新文章~

~扫码关注可以联系交流~

WeChatQRCode