腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
数据结构与算法(JavaScript)
开阔眼界与逻辑思维能力,程序 = 数据结构 + 算法,一起来学习吧~
专栏成员
举报
14
文章
8269
阅读量
13
订阅数
订阅专栏
申请加入专栏
全部文章(14)
数据结构(8)
javascript(6)
编程算法(2)
二叉树(1)
搜索文章
搜索
搜索
关闭
前端学数据结构与算法(十四):01执行的艺术 - 回溯算法(下)
javascript
书接上文,上个章节从递归到回溯的做了递进式介绍,相信已经对回溯有了初步的理解,接下来主要介绍更多与回溯相关的题目,从广度上加深对其理解。
飞跃疯人院
2020-12-06
524
0
前端学数据结构与算法(十三):01执行的艺术 - 回溯算法(上)
javascript
在最初尝试学习算法时,对两个算法留下了深刻的印象,一个是动态规划,另一个就是回溯算法。如果说算法思想的艺术,那归于动态规划;但如果说用计算机执行机制解决问题的艺术,那非回溯算法莫属了,也由衷的赞叹,原来计算机还能这么执行。
飞跃疯人院
2020-11-29
533
0
前端学数据结构与算法(十二):有趣的算法 - 多指针与滑动窗口
javascript
如果说如何用算法高效有趣的解决某些问题,那多指针和滑动算法绝对是算其中的佼佼者。这也是笔者最初接触算法时觉得最有意思的一点,因为解决的问题是熟悉的,但配方却完全不同,本章我们从一个简单的交集问题出发,一步步的认识到多指针及滑动窗口解决某些问题时的巧妙与高效,本章主要以解LeetCode里高频题为参考~
飞跃疯人院
2020-11-19
574
0
前端学数据结构与算法(十一):看似简单又让人抓狂的二分查找算法
编程算法
二分查找法是一种高效的查找算法,它的思想非常好理解,但编写正确的二分查找并不简单。本章从最基础的二分查找实现开始,讲解其编写技巧,接下来介绍它的四个常见变种的编写,最后应用二分查找来解决真正的面试题,学以致用的同时更加深对其的理解,真正掌握它。
飞跃疯人院
2020-11-06
462
0
前端学数据结构与算法(十):深入理解快速排序
javascript
上一章我们已经实现了快速排序,在数据理想化的情况下,上一章的快排性能确实也不错,但如果数据比较极端的,快排的O(nlogn)就不太稳定了,本章将介绍几种快排应对极端数据下优化方案;以及介绍partition操作延伸出来的快速选择算法在解决top K问题时高效。
飞跃疯人院
2020-10-31
487
0
前端学数据结构与算法(九):常见五种排序算法的实现及其优缺点
编程算法
数据结构章节暂时告一段落,从这一章节开始算法之旅。首先从排序开始,排序作为最基础的算法,一点也不简单,写一个快排、堆排、归并排序在大厂面试中并不罕见,或者某些题目就需要使用某些排序的思想来解决,这也就是为什么要学习排序。当然最重要的是学习它的思想,例如快排的partition操作,快排和归并排序的分治思想,以及排序的性能优化,又或者O(n²)的排序也并非一无是处等。本章将手写五种常见排序算法,它们包括冒泡排序、选择排序、插入排序、归并排序、快速排序、(堆排序第七章已介绍),理解它们的优缺点,从而能在合适的场景使用恰当的排序算法。
飞跃疯人院
2020-10-26
923
0
前端学数据结构与算法(八): 单词前缀匹配神器-Trie树的实现及其应用
数据结构
javascript
继二叉树、堆之后,接下来介绍另外一种树型的数据结构-Trie树,也可以叫它前缀树、字典树。例如我们再搜索引擎里输入几个关键字之后,后续的内容会自动续上。此时我们输入的关键词也就是前缀,而后面的就是与之匹配的内容,而这么一个功能底层的数据结构就是Trie树。那到底什么是Trie树?还是三个步骤来熟悉它,首先了解、然后实现、最后应用。
飞跃疯人院
2020-10-14
874
0
前端学数据结构与算法(一):不会复杂度分析,算法等于白学
数据结构
兜兜转转了这么久,数据结构与算法始终是逃不过命题。曾几何时,前端学习数据结构与算法,想必会被认为不务正业,但现今想必大家已有耳闻与经历,面试遇到链表、树、爬楼梯、三数之和等题目已经屡见不鲜。想进靠谱大厂算法与数据结构应该不止是提上日程那么简单,可能现在已经是迫在眉睫。这次决定再写一个系列也只是作为我这段时间的学习报告,也不绝对不会再像我之前的vue原理解析那般断更了,欢迎大家监督~
飞跃疯人院
2020-10-07
917
0
前端学数据结构与算法(二):数组的操作特性与栈的应用
数据结构
数据结构与算法有相互依存的关系,如果将这个两个又进行划分,无疑数据结构又是这座大厦的基础。首先从线性数据结构开始,介绍大家耳熟能详的数据结构-数组。因为JavaScript已经为数组封装了很多增删改查以及遍历的方法,这里就不再赘述具体API了。而后半部分将使用数组实现一种受限的数据结构-栈。最后会解题几道leetCode上与栈相关的题目,方便更加深入理解这种受限数据结构的用途。
飞跃疯人院
2020-10-07
464
0
前端学数据结构与算法(三):链表为什么能和数组相提并论?用链表实现数组bettle下
数据结构
说到线性的数据结构,那就不得不提链表,这一章我们从底层实现一个链表,并用它'高仿'一个数组,实现数组一系列的API,最后在性能上bettle下,从而更加深入理解这种数据结构的特性,也搞清楚为什么要理解这种数据结构。也许有一天实际的开发中,遇到某些场景,在我们习惯性的使用数组时,可以停下来思考几秒,也许这个场景用链表更合适(然后还是用数组)。
飞跃疯人院
2020-10-07
442
0
前端学数据结构与算法(四):理解递归及拿力扣链表题目练手
数据结构
再没对递归了解之前,递归一直是个人的噩梦,对于写递归代码无从下手,但当理解了递归之后,才惊叹到,编程真的是一门艺术。在01世界里,递归是极其重要的一种算法思想,不可能绕的开。这一章我们从调用栈、图解、调试、用递归写链表的方式,再进一步巩固上一章链表的同时,也更进一步理解递归这种算法思想。
飞跃疯人院
2020-10-07
583
0
前端学数据结构与算法(五):理解二叉树特性及从零实现二叉搜索树
数据结构
之前的章节主要介绍的都是线性的数据结构(队列下章介绍),从这章开始将介绍01世界里另一个更普遍与常用的数据结构-树,这也是比线性数据结构更复杂,更好玩一种数据结构。树的结构有非常多种,二叉的、多叉的、平衡的、有序的等等。这一章上半部分主要介绍二叉树及其相关定义,后半部分从底层实现一颗二叉搜索树,包括它的增、删、查等,最后谈谈它的性能以及优缺点,从完整的角度理解这种数据结构。
飞跃疯人院
2020-10-07
398
0
前端学数据结构与算法(六):二叉树的四种遍历方式及其应用
数据结构
二叉树
上一章我们从0到1的实现了一颗二叉搜索树,以及理解了二叉搜索树的特性与基本操作,这一章介绍关于二叉树的更多操作,也就是树的遍历。主要包括前序遍历、中序遍历、后序遍历、层序遍历,前面三种也叫深度优先遍历(DFS),最后的层序遍历也叫广度优先遍历(BFS),理解这四种遍历方式的不同,再遇到树相关的算法问题时,也就能更加游刃有余。这里不单指二叉搜索树,遍历思想同样适用于多叉树。
飞跃疯人院
2020-10-07
768
0
前端学数据结构与算法(七): 从零实现优先队列-堆及其应用
数据结构
javascript
为什么说树结构是01世界里最重要的数据结构,因为只要调整一下节点的存储顺序或枝杈多少,解决问题的类型就可以完全不同。本章介绍的堆也是二叉树的一种,与二叉搜索树想比,只是改变了节点存放值的规则,它遵循的规则就是每个父节点的值必须大于或等于孩子节点的值,这种数据结构是二叉堆,也可以叫它优先队列。
飞跃疯人院
2020-10-07
320
0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档