数据结构
文章平均质量分 74
qdmoment
全局掌控,剖析网站终端建设
展开
-
树结构使用实例---实现数组和树结构的转换
树是一种非散列数据结构,和非散列表一样,它对于存储需要快速查找的数据非常有用。树是一种分层数据的抽象模型。现实生活中最常见的树的例子是家谱,或是公司的组织架构本文将讲述一个实例,构造一棵树来实现数组和tree的相互转换,这在前端树结构中是经常遇到的。需求场景:将数组转化树结构,并将树结构转化为数组数组const list= [ { id: 1001, parentId: 0, name: 'AA' }, { id: 1002, parentId: 1001, ...原创 2020-07-19 06:48:06 · 3497 阅读 · 0 评论 -
immutable存在的意义及基本数据结构种类和用法
学习一个新的工作或者集成库,首先要总体上了解这个工具或者库的作用,其次要知道其基本的使用方法,有哪些功能点,怎么使用这些操作。介绍immutable之前先介绍两个概念深拷贝和浅拷贝,具体参见我的另一篇文章:详解浅拷贝和深拷贝及es6对象方法的解析对于immutable:immutable是javascript的一个不可变库,主要用途是深拷贝js对象,进而确保数据是不变的。imm...原创 2019-03-15 17:57:43 · 1187 阅读 · 0 评论 -
环形缓存区(redux-saga应用实例)
环形缓冲器(ringr buffer),也称作圆形队列(circular queue),循环缓冲区(cyclic buffer),圆形缓冲区(circula buffer),是一种用于表示一个固定尺寸、头尾相连的缓冲区的数据结构,适合缓存数据流。实现实例://这里定义圆形缓存器function ringBuffer(limit = 10, overflowAction) { let...原创 2019-07-08 11:06:36 · 187 阅读 · 0 评论 -
Blob的三种应用场景及Blob,url,base64之间的转换
Blob是一种Javascript的对象类型,兼容到IE10Blob对象表示一个不可变、原始数据的类文件对象。Blob 表示的不一定是JavaScript原生格式的数据。File接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。 file 对象只是 blob 对象的一个更具体的版本,blob 存储着大量的二进制数据,并且 blob 的 s...原创 2019-08-02 18:47:01 · 12837 阅读 · 0 评论 -
数据结构系列-递归(recursive function)
递归是一种使操作树和图数据结构变得更简单特殊 的方法。递归是一种解决问题的方法,它从解决问题的各个小部分开始,直到解决最初的大问题。递归通常涉及函数调用自身。每个递归函数都必须有基线条件,即一个不再递归调用的条件(停止点),以防 止无限递归。function understandRecursion(doIunderstandRecursion) { const recursion...原创 2019-09-29 10:36:24 · 1916 阅读 · 0 评论