![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Javascript数据结构与算法
文章平均质量分 70
errorwhy
这个作者很懒,什么都没留下…
展开
-
集合结构(跟着B站coderwhy老师视频学习笔记)
集合结构集合比较常见的实现方式是哈希表(后续学习),现在用Js中obj对象来封装集合通常是由一组无序的,不能重复的元素构成集合的常见操作add(value) 向集合中添加一个新的项remove(value) 从集合中移除一个值has(value) 判断集合是否含有某个值clear() 移除集合中所有的项size() 返回集合包含元素的数量values() 返回一个包含集合中所有值的数组还有一些其他相关操作,暂不封装//封装集合类function Set() { thi原创 2021-04-18 11:34:28 · 187 阅读 · 0 评论 -
链表结构(跟着B站coderwhy老师视频学习笔记)
链表结构链表中的每个元素由一个存储元素本身的节点和指向下一个元素的引用(有些语言称为指针或者连接)组成链表优点不同于数组,链表中的元素在内存中不必是连续的空间链表大小可以无限的延伸链表插入删除数据,时间复杂度达到O(1),相对数组效率高很多链表缺点链表访问任何一个位置的元素都需要从头开始访问,无法通过下标访问链表常见操作append(element) 向链表尾部添加一个新的项insert(position,element) 向链表的特定位置添加一个新的项get原创 2021-04-08 10:54:07 · 82 阅读 · 0 评论 -
一.邂逅数据结构与算法(跟着B站coderwhy老师视频学习笔记)
一.邂逅数据结构与算法1.什么是数据结构个人理解:数据结构就是计算机中,存储和组织数据的方式。2.常见的数据结构#mermaid-svg-REReFnwmmgSRtK3G .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-REReFnwmmgSRtK3G .label text{fill:#333}#mer原创 2021-04-02 11:15:32 · 350 阅读 · 0 评论 -
认识队列(跟着B站coderwhy老师视频学习笔记)
一.认识队列队列是一种受限的线性表,先进先出(FIFO first in first out)受限之处在于只允许在表的前端进行删除操作,而在表的后端进行插入操作队列的实现:基于数组实现基于链表实现二.队列的常见操作enqueue() 向队列尾部添加一个或多个项dequeue() 移除队列最前面的项,并返回front() 返回队列中的第一个元素isEmpty() 检查队列是否为空size() 返回队列元素个数toString 将队列中的内容转换原创 2021-04-06 11:47:36 · 130 阅读 · 0 评论 -
认识栈结构(跟着B站coderwhy老师视频学习笔记)
一.认识栈结构数组是一种线性结构, 可以在数组的任意位置插入和删除数据。而栈(stack),是一种运算受限的线性表,后进先出(LIFO)。LIFO(last in first out)表示就是后进入的元素, 第一个弹出栈空间,先拿出去使用.其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈;从一个栈删除元素又称作出栈或退栈。二.面试题[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(原创 2021-04-06 11:43:08 · 119 阅读 · 0 评论 -
数组结构(跟着B站coderwhy老师视频学习笔记)
二.数组结构1.数组的基本使用创建和初始化数组// 创建和初始化数组var daysOfWeek = new Array(7)var daysOfWeek = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday','Thursday', 'Friday', 'Saturday')使用new关键字,就能简单地声明并初始化一个数组用new创建数组并不是最好的方式。如果你想在JavaScript中创建一个数组,只用中括号([])的形式就行了原创 2021-04-06 11:41:44 · 176 阅读 · 0 评论