随笔分类 - 数据结构与算法
摘要:队列 队列中我们主要实现两种: 1. 常规队列 2. 优先队列(实际应用中的排队加急情况等) 常规队列的实现方法如下: 常规队列的应用之,队伍匹配(需要node环境): 优先队列中主要增加了权重的比对,实现方法如下: 优先队列的使用方法如下: 栈 栈是一种先进后出的结构,js中使用数组进行模拟 栈的
阅读全文
摘要:hash散列中需要确定key和value的唯一确定关系。 hash散列便于快速的插入删除和修改,不便于查找最大值等其他操作 以下为字符和数字的hash散列: hash的使用方法:
阅读全文
摘要:数据结构中的集合,类似于数学中常说的集合,是一类数据的群组。集合与集合之间还存在交集,并集,补集的运算。 ***集合为无序,集合内元素不重复 ***js的set基于数组, 使用SetClass为类名,区别于ES6 集合的实现方法如下: function SetClass () { this.data
阅读全文
摘要:数据结构中,二叉树的使用频率非常高,这得益于二叉树优秀的性能。 二叉树是非线性的数据结构,用以存储带有层级的数据,其用于查找的删除的性能非常高。 二叉树 数据结构的实现方法如下: 二叉树 数据结构的使用方法如下:
阅读全文
摘要:首先,链表有以下特点: 1. 存储空间不固定,可灵活扩充 2.方便多次的插入和删除,效率较高 单链表 单链表是最常用的链表,其对数据的操作均为单项的,向后查找的。 双向链表 双向链表可以方便地对数据进行向前和向后查找(操作),如播放器正向播放音乐时用户存在上一曲和下一曲的操作需要,此时就用到了双向链
阅读全文
摘要:* 列表用于存放数据量较少的数据结构* 当数据量较大时,不需要对其进行查找、排序的情况下,使用列表也比较方便。 本数据结构在node环境下运行,需要对node有个基本是了解。 1. listSize: 列表长度 2. pos 当前位置 3. getLength 获取列表的长度 4. toString
阅读全文
摘要:1.js实现队列的数据结构(先进先出) 2. js实现栈(先进后出) ***** 实现拉火车游戏 游戏约定如下: 1.首先给定相同数量的牌 2. 不同玩家轮流出牌 3.当出牌后,两张最近的相同牌之间的所有牌可以被当前玩家获取,获取后放在尾部 4.先出完牌的玩家输 *****定义玩家类 *******
阅读全文