![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javaScript 数据结构与算法
文章平均质量分 55
喻先生_
这个作者很懒,什么都没留下…
展开
-
数据结构与算法—字典
字典:是以[键, 值]的形式来存储元素,字典也称作映射、符号表或关联数组。 与Set 类相似,ECMAScript2015同样包含了一个Map 类的实现,即我们说的字典。 function defaultToString(item) { if (item === null) { return 'NULL' } else if (item === undefined) { return 'UNDEFINED' } else if (typeof item原创 2022-05-22 15:41:49 · 192 阅读 · 0 评论 -
数据结构与算法—集合
集合是由一组无序且唯一(即不能重复)的项组成的 集合运算: 并集:对于给定的两个集合,返回一个包含两个集合中所有元素的新集合 交集:对于给定的两个集合,返回一个包含两个集合中共有元素的新集合 差集:对于给定的两个集合,返回一个包含所有存在于第一个集合且不存在于第二个集合的元素的新集合(意思就是存在于A中,但不存在于B中) 子集:验证一个给定集合是否是另一个集合的子集(意思就是集合A中的每一个元素,也需要存在于集合B) class Set { constructor() {原创 2022-05-22 15:34:28 · 448 阅读 · 0 评论 -
数据结构与算法—链表
链表 链表存储有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的。每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(也称指针或链接)组成。 链表与数组的对比: 相对于传统的数组,链表的一个好处在于,添加或移除元素的时候不需要移动其他元素。在数组中,我们可以直接访问任何元位置的任何元素,而要想访问链表中间的一个元素,则需要从起点(表头)开始迭代链表直到找到所需的元素。 class Node { constructor(element) { this.el原创 2022-05-22 15:10:09 · 326 阅读 · 0 评论 -
数据结构与算法—队列
队列:遵循的是先进先出(FIFO First In First Out)原则的一组有序的项。队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾 isEmpty(): 如果队列中不包含其它元素,返回true,否则返回false size(): 返回队列包含的元素个数 clear(): 清空队列 toString(): 返回字符串形式的队列 enqueue(element): 向队列尾部添加一个新的项 dequeue(): 移除队列的第一项(即排在队列最前面的项)并返回被移除的元素 pe原创 2022-05-10 00:30:34 · 318 阅读 · 0 评论 -
数据结构与算法—栈
栈:是一种遵循先进后出(LIFO)原则的有序集合。新添加或待删除的元素都保存在栈的同一端,称作栈顶,另一端就叫栈底 1.创建一个基于数组的栈 push: 添加一个(或几个)新元素到栈顶 pop:移除栈顶的元素,同时返回被移除的元素 peek:返回栈顶的元素,不对栈做任何修改 isEmpty: 如果栈里没有任何元素就返回true, 否则返回false size: 返回栈里的元素个数 clear: 移除栈里的所有元素 两种方式: function Stack() { this.items = []原创 2022-05-09 00:41:05 · 366 阅读 · 0 评论