
前端算法笔记
文章平均质量分 80
padawan75
这个作者很懒,什么都没留下…
展开
-
前端算法笔记-归并排序
前言准备根据修言老师的小册子中归并排序的内容,学习一下剑指offer 51归并排序是对分治思想的典型应用,它按照如下的思路对分治思想“三步走”的框架进行了填充:分解子问题:将需要被排序的数组从中间分割为两半,然后再将分割出来的每个子数组各分割为两半,重复以上操作,直到单个子数组只有一个元素为止。 求解每个子问题:从粒度最小的子数组开始,两两合并、确保每次合并出来的数组都是有序的。(这里的“子问题”指的就是对每个子数组进行排序)。 合并子问题的解,得出大问题的解:当数组被合并至原有的规模时原创 2021-06-06 13:46:05 · 234 阅读 · 0 评论 -
前端算法笔记-树的基本应用
前言准备根据修言老师的小册子结合leetcode上剑指offer的二叉树学习这一部分。先序、后序、中序、层序遍历的非递归实现在我的理解里,树就是一种特殊的图。先序对应了图的深度遍历,而层序对应了图的广度遍历。先序和后序的递归实现方式还是比较好理解,非递归实现就自己手动去实现一个递归栈。我初学习数据结构是跟着浙大的mooc,其中对于树的遍历有一个很好理解的解释:按照叉号读出来的顺序是前序遍历,正好是第一次经过该节点按照星号读出来的顺序是中序遍历,正好是第二次经过该节点按原创 2021-05-30 14:55:15 · 276 阅读 · 2 评论 -
前端算法笔记-数组的应用
前言准备根据修言老师的小册子结合leetcode上剑指offer的数组题学习这一部分。Map的妙用真题描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。emmm首先这道题我做过,虽然第一反应肯定是两层循环。但是仔细一想,可以用哈希表。剑指offer原题和这题太一样。给的是一个递增排序,所以考点就变成了二分或者双指针(下面会讲到)。这里修言老师语:大家以后做算法题的时候,要有这样的一种本能..原创 2021-05-20 23:30:34 · 276 阅读 · 2 评论 -
前端算法笔记-数据结构基础
目录前言数据结构数组——重要的开箱即用数据类型初始化数组遍历二维数组的初始化二维数组的遍历添加和删除元素的方法添加方法删除方法总结栈(Stack)——只用 pop 和 push 完成增删的“数组”队列(Queue)——只用 push 和 shift 完成增删的“数组”链表链表结点的创建树二叉树的常用属性二叉树的节点二叉树遍历先序遍历中序遍历后序遍历前言之前一直在用Java刷算法题。最近半年因为实习原因,转了前端。打算从0开始,用JavaScript刷题。买了修言老师的小册子:前端算法与数据结构面试原创 2021-05-16 15:13:25 · 426 阅读 · 4 评论