首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
来一打算法吧
订阅
木易涛童鞋
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
栈、堆、队列深入理解,面试无忧
Event Loop的执行栈、任务队列。 变量存储的堆、栈问题。 栈、队列数据结构的实现问题。 还有一些列相关的手写问题。 在面试中,经常问遇到与之相关的一些列问题哈。 栈 是一种遵循 后进先出(LIFO) 原则的有序集合。新添加和待删除的数据都保存在栈的同一端栈顶,另一端就是…
十大经典排序算法总结(JavaScript描述)
读者自行尝试可以想看源码戳这,博主在github建了个库,欢迎star.读者可以Clone下来本地尝试。此博文配合源码体验更棒哦~~~ 输出:n个数的排列:a1',a2',a3',...,an',使得a1'<=a2'<=a3'<=...<=an'。 再讲的形象点就是排排坐,调座…
手写算法并记住它:快速排序(5行代码简单版)
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如快速排序,一个快字就能体现出其价值,因而它是用得最多的。 因为它相对难一些,本系列将分两篇文章讲解它。 本篇是一种简单实现版本,与归并排序做对比,摸清快排的总体思路。下一篇才是常见于各教程中的…
手写算法并记住它:归并排序
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如归并排序,“归并”二字就是“递归”加“合并”。它是典型的分而治之算法。 上图中,先把数组一分为二,然后递归地排序好每部分,最后合并。 解决办法很容易想到,两权相较取其轻。 如上图所示,每次比较…
🔥 面试必备:高频算法题汇总「图文解析 + 教学视频 + 范例代码」之 排序 + 二叉树 部分 🔥
所谓排序算法,即通过特定的算法因式将一组或多组数据按照既定模式进行重新排序。这种新序列遵循着一定的规则,体现出一定的规律,因此,经处理后的数据便于筛选和计算,大大提高了计算效率。 两者在排序前后的相对位置不发生变化。 冒泡排序可以说是最基础的了,无非就是两个 for 循环嵌套,…
手写算法并记住它:选择排序
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如选择排序,所谓“选择”,就是每次遍历时,选择一个最小的交换到已排好序列的后面。 上图演示了第三次遍历,此时元素1和2已经排好序,再在剩下的元素中找到最小的元素3,然后与目标位置交换。 这一点难…
手写算法并记住它:桶排序
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如桶排序,一提起“桶”,我就想到了垃圾分类。 桶排序就是先分类,即把数据放进相应的桶里,然后对每个桶进行局部排序,最后再把桶合并一下就行了。 上图演示了该算法的总体流程。分为三步,分类,排序和合…
手写算法并记住它:基数排序
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如基数排序,就是按照数字的“位”来排序。 位,是进位的位,比如十进制数的基数是10,就可以按照个十百千万等位来排序。 上图演示了基数排序算法的总体流程。先按个位从小到大排序,然后再按十位、百位排…
手写算法并记住它:计数排序
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如计数排序,所谓“计数”,就是数一数,统计每个元素重复出现的次数。 上图演示了该算法的总体流程。分为两步:查和排。 首先查一查每个元素都出现了多少次,比如元素0出现了1一次,元素1出现了一次,元…
手写算法并记住它:快速排序(最易理解版)
本系列文章就尝试解决这个问题。 研读那些排序算法,细品它们的名字,其实都很贴切。 比如快速排序,一个快字就能体现出其价值,因而它是用得最多的。 因为它相对难一些,本系列将分两篇文章讲解它。 上一篇是5行代码实现版本。而本篇是原地排序算法。 快速排序这个名字是针对其性能来起的,但…