![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript数据结构与算法
文章平均质量分 79
JavaScript数据结构与算法
FL_csdn1
希望以后脑袋不要秃
展开
-
JavaScript(ES6)数据结构与算法——链表
链表和数组一样,可以用于存储一系列的元素,但是列表和数组的实现机制完全不同。在学习链表之前我们先了解一下数组的不足(缺点):要存储多个元素,数组可能是最常用的数据结构。几乎每一种编程语言都有默认实现的数组结构,数组的创建通常需要申请一段连续的内存空间,并且大小是固定的(大多数语言是固定的),所以当数组不能满足容量需求时,需要扩容,一般情况下是申请一个更大的数组,将原来数组中元素复制过去。而且数组开头或中间位置插入数据的成本很高,需要进行大量元素的位移。尽管JavaScript中的Array类可以帮助我原创 2021-08-23 19:55:48 · 348 阅读 · 0 评论 -
JavaScript(ES6)数据结构与算法——队列
认识队列什么是队列队列(Queue),它是一种受限的线性表,先进先出,受限之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作。生活中类似队列的结构生活中类似队列的场景有电影院,商场,一系列排队问题都可以归纳为队列,优先排队的人,优先处理。还有一种就是打印机队列的问题:有五份文档需要打印,这些文档会按照次序放入到打印队列中。打印机依次会从队列中取出文档,优先放入的文档,优先被取出,并且对该文档进行打印,依次类推,直到队列中不再有新的文档。队列的实现方式基于数组实现基于链表实现原创 2021-08-14 18:00:33 · 447 阅读 · 0 评论 -
JavaScript(ES6)数据结构与算法——栈
实现栈结构有两种比较常见的方法基于数组实现基于链表实现这里演示的是基于数组实现的方式在实现栈结构之前,我们需要知道栈都有哪些功能添加一个新元素到栈顶位置。push(element)移除栈顶元素,同时返回被移除的元素。pop()返回栈顶的元素,不对栈做任何操作。peek()如果栈中没有任何就返回true,否则就返回false。isEmpty()返回栈中的元素个数,这个方法和数组的length属性类似。size()栈结构的封装在这里插入代码片...原创 2021-08-13 23:26:45 · 330 阅读 · 0 评论