![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
Oreohahaha
这个作者很懒,什么都没留下…
展开
-
数据结构之字典
JavaScript实现字典 字典数据结构 创建字典 1. 链表数据结构 在计算机科学中,关联数组(英语:Associative Array),又称映射(Map)、字典(Dictionary)是一个抽象的数据结构,它包含着类似于(键,值)的有序对。 完整代码 const Dictionary = function() { let items = {}, length...原创 2018-09-23 13:19:28 · 250 阅读 · 0 评论 -
数据结构之单向链表
JavaScript实现链表 链表数据结构 向链表添加元素 从链表移除元素 使用LinkedList类 双向链表 循环链表 1. 链表数据结构 2. 创建链表 function LinkedList() { let Node = function(element) { this.element = element; this.next = null; ...原创 2018-09-22 14:28:24 · 129 阅读 · 0 评论 -
数据结构之队列
JavaScript实现队列 队列数据结构 创建队列 向队列添加元素 从队列移除元素 查看队列头元素 查看队列是否为空 打印队列元素 1. 队列数据结构 栈是一种遵从先进先出(FIFO)原则的一组有序的项。队列在尾部添加新元素,并从头部移除元素。最新添加的元素必须排在队列的末尾。 2. 创建队列 创建一个类来表示栈。 function Queue() { let items = []; }...原创 2018-09-20 14:56:25 · 345 阅读 · 0 评论 -
数据结构之栈
浅拷贝的实现方法 var a = []; var b = a; // 数组的浅拷贝 var c = {}; var d = c; // 对象的浅拷贝 深拷贝的实现方法 数组的深拷贝 // 利用es6 变量的结构赋值 var a = [1, 2, 3]; var [...b] = a; // 利用循环赋值 var a1 = [1, 2, 3]; var b2 = []; for (let i...原创 2018-09-17 23:50:31 · 240 阅读 · 0 评论 -
数据结构之数组
几乎所有的编程语言都原生支持数组,因为数组是最简单的内存数据结构。 1.创建数组 var array1 = new Array(); // 简单申明 var array2 = new Array(7); // 申明定长的数组 var array3 = new Array('one', 'two', 'three'); // 直接将数组元素传入 最佳实践 ...原创 2018-09-20 10:52:34 · 319 阅读 · 0 评论 -
数据结构之图
JavaScript实现图 什么图 代码实现 1. 什么是图 在數學的分支图论中,图(Graph)用于表示物件與物件之間的關係,是圖論的基本研究對象。一张圖由一些小圓點(稱為頂點或結點)和連結這些圓點的直線或曲線(稱為邊)組成。西尔维斯特在1878年首次提出“图”这一名词。 (wiki百科) 2. 代码实现 const Graph = function() { let vertice...原创 2018-09-25 14:56:59 · 102 阅读 · 0 评论 -
数据结构之排序算法
JavaScript实现排序算法 代码实现 const ArrayList = function() { let array = [], length = 0; this.insert = function(item) { array.push(item); length++; }; this.toString =...原创 2018-09-23 20:50:58 · 131 阅读 · 0 评论 -
数据结构之二叉搜索树(BST)
JavaScript实现二叉搜索树(BST) 二叉搜索树定义 二叉搜索树JavaScript代码实现 1. 二叉搜索树 二叉查找树(英语:Binary Search Tree),也称为二叉搜索树、有序二叉树(ordered binary tree)或排序二叉树(sorted binary tree),是指一棵空树或者具有下列性质的二叉树: 若任意节点的左子树不空,则左子树上所有节点的值均小于...原创 2018-09-23 16:03:18 · 233 阅读 · 0 评论 -
数据结构之散列表(Hash Table)
JavaScript实现散列表(hash map/ hash table) 散列表数据结构 hash table 代码 改进后hash table 代码 hash算法改进 1. 双向链表数据结构 散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速...原创 2018-09-23 14:33:25 · 305 阅读 · 0 评论 -
数据结构之双向链表
JavaScript实现双向链表 链表数据结构 创建链表 在链表的任意位置插入元素 从链表指定位置移除元素 1. 双向链表数据结构 双向链表,又稱為双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。 所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。 一般我们都构造双向循环链表。(wiki百科) 图片来自网络。 2. 创建链表 ...原创 2018-09-22 22:19:27 · 142 阅读 · 0 评论