
数构与前端
文章平均质量分 96
不论是前端还是后端,数据结构和算法对我们来说都非常重要。它从思维层面决定了一个人的逻辑能力、洞察力等等能力。本系列文章将谈论数据结构与算法在前端中的应用。
周一同学Zelina
00后 | 互联网大厂AIGC研发 | 聚焦于AI知识管理体系、AI项目管理体系。链接:mondaylab712
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
最小堆最大堆了解吗?一文了解堆在前端中的应用
一文了解堆在前端中的应用⚡序言一、堆是什么?二、JS中的堆三、堆的应用四、构建一个最小堆1. 定义2. 方法3. 用js代码实现最小堆(1)初始化一个堆(2)交换位置swap()(3)获取父节点的位置getParentIndex()(4)获取左侧子节点的位置getLeftIndex()(5)获取右侧子节点的位置getRightIndex()(6)进行上移操作shiftUp()(7)进行下移操作shiftDown()(8)插入节点的值insert()(9)删除堆顶操作pop()原创 2021-07-21 06:20:41 · 749 阅读 · 6 评论 -
可视化太酷辽!一文了解排序和搜索算法在前端中的应用
一文了解排序和搜索算法在前端中的应用⏳序言一、文章结构抢先知⌚二、排序和搜索1、定义2、JS中的排序和搜索⏰三、排序算法1、冒泡排序(1)定义(2)实现思路(3)图例(4)代码实现2、选择排序(1)定义(2)实现思路(3)图例(4)代码实现3、插入排序(1)定义(2)实现思路(3)图例(4)代码实现4、归并排序(1)定义(2)实现思路(3)图例(4)代码实现5、快速排序(1)定义(2)实现思路(3)图例(4)代码实现⏲️四、搜索算法1、顺序搜索(1)定原创 2021-07-22 07:36:06 · 957 阅读 · 20 评论 -
一文了解树在前端中的应用,掌握数据结构中树的生命线
一文了解树在前端中的应用序言一、树是什么?二、深/广度优先遍历1、深度优先遍历(1)定义(2)口诀(3)代码实现2、广度优先遍历(1)定义(2)口诀(3)代码实现????三、二叉树1、定义2、二叉树的先/中/后序遍历(1)先序遍历(2)中序遍历(3)后序遍历3、JS实现先中后序三种遍历(1)JS实现二叉树的先序遍历(2)JS实现二叉树的中序遍历(3)JS实现二叉树的后序遍历(4)总结☘️四、leetcode经典题目剖析1、leetcode104二叉树的最大深度(简单)2、leetc原创 2021-07-19 07:25:01 · 581 阅读 · 13 评论 -
太平洋大西洋水流问题如何解决?一文了解图在前端中的应用
一文了解图在前端中的应用序言一、图是什么?1、定义2、举例二、图的表示法1、邻接矩阵表示法2、邻接表表示法三、图的常用操作1、图的深度优先遍历(1)定义(2)口诀(3)代码实现2、图的广度优先遍历(1)定义(2)口诀(3)代码实现四、leetcode经典题目解析1、leetcode417太平洋大西洋水流问题(中等)2、leetcode133克隆图(中等)3、leetcode65有效数字(困难)五、结束语彩蛋时间Painted Eggshell往期推荐番原创 2021-07-20 06:43:38 · 385 阅读 · 25 评论 -
ES6的Set和Map你都知道吗?一文了解集合和字典在前端中的应用
一文了解集合和字典在前端中的应用一、集合1、集合是什么?2、前端与集合:使用ES6中的Set3、用Set模拟并集、交集和差集(1)模拟并集运算(2)模拟交集运算(3)模拟差集运算4、使用扩展运算符来模拟并集、交集和差集(1)用扩展运算符实现并集(2)用扩展运算符实现交集(3)用扩展运算符实现差集5、leetcode案例题分析(1)leetcode349两个数组的交集二、字典1、字典是什么?2、前端与集合:使用ES6中的Map3、使用Map类的API4、leetcode案例题分析(1)leet原创 2021-06-20 07:41:28 · 431 阅读 · 25 评论 -
一文了解贪心算法和回溯算法在前端中的应用
一文了解贪心算法和回溯算法在前端中的应用在我们日常的生活中,经常会碰到贪心算法和回溯算法的应用场景。比如,贪心算法常应用于最少硬币找零问题,分数背包等问题。而回溯算法常用于迷宫求解、N皇后等问题。这两种各有各的优点,也各有各的不足。在下面的这篇文章中,将讲解贪心算法和回溯算法的常见应用场景,以及分析高频 leetcode算法。一起来学习⑧????一、贪心算法1、贪心算法是什么?贪心算法是算法设计中的一种方法。期盼通过每个阶段的局部最优选择,从而达到全局的最优。结果不一定最优。2、应用场原创 2021-06-19 11:18:04 · 725 阅读 · 29 评论 -
一文了解分而治之和动态规则算法在前端中的应用
一文了解分而治之和动态规则算法一、分而治之1、分而治之是什么?2、应用场景3、场景剖析:归并排序和快速排序二、动态规则1、动态规则是什么?2、应用场景3、场景剖析:斐波那契数列4、动态规则VS分而治之三、分而治之算法常见应用1、leetcode 374:猜数字大小2、leetcode 226:翻转二叉树3、leetcode 100:相同的树4、leetcode 101:对称二叉树四、动态规则算法常见应用1、leetcode 70:爬楼梯2、leetcode 198:打家劫舍3、leetcode 62:不同.原创 2021-06-18 08:42:43 · 358 阅读 · 25 评论 -
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
队列在前端中的应用一、队列是什么二、应用场景三、前端与队列:事件循环与任务队列1、event loop2、JS如何执行3、event loop过程4、 DOM 事件和 event loop5、event loop 总结四、宏任务和微任务1、引例2、宏任务和微任务(1)常用的宏任务和微任务(2)宏任务和微任务的优先级(3)代码实现微任务和宏任务(4)event loop和DOM渲染(5)微任务、宏任务和DOM渲染的关系(6)为何微任务更早五、结束语队列 在日常生活中的应用非常广泛,比如我们最熟悉不过的食堂.原创 2021-06-13 10:54:42 · 796 阅读 · 41 评论 -
详解链表在前端的应用,顺便再弄懂原型和原型链!
链表在前端中的应用一、链表VS数组二、JS中的链表三、前端与链表:JS中的原型链1、原型是什么?2、原型链是什么?2、原型链长啥样?(1)arr → Array.prototype → Object.prototype → null(2)obj → Object.prototype → null(3)func → Function.prototype → Object.prototype → null(4)class中的原型3、原型链知识点4、常见面试题(1)instanceof原理(2)看代码,得出输出结原创 2021-05-15 16:54:11 · 1356 阅读 · 3 评论 -
栈在前端中的应用,顺便再了解下深拷贝和浅拷贝!
`栈` 在日常生活中的应用非常广泛,比如我们最熟悉不过的十进制转二进制、迷宫求解等等问题。同时,它在前端中的应用也非常广泛,很多小伙伴都会误以为 `栈` 在前端中的应用很少,但殊不知的是,我们写的每一个程序,基本上都会用到 `栈` 这个数据结构。比如,函数调用堆栈、数据的深拷贝和浅拷贝……。所以呢,对于一个前端工程师来说, `栈` 结构是一个必学的知识点。在接下来的这篇文章中,将讲解关于 `栈` 在前端中的应用。原创 2021-05-14 12:48:57 · 447 阅读 · 1 评论