2020年秋招进行到目前,深知自己的基础不够扎实,遂创建了这个仓库,顺便记录一下前端路上的点滴,也羡慕早已拿到大厂offer的同学,自己的路还很长,你我都在路上,加油💪
日期 | 题目 | 知识点 | 完成情况 | 忘记的知识点 |
---|---|---|---|---|
9.19 | 01-二维数组中的查找 | 二分查找 | ✔ | |
9.19 | 02-替换空格 | 正则表达式 | ✔ | \s 表示空格 |
9.19 | 03-从尾到头打印链表 | 链表相关 | ✔ | 链表的反转 |
9.20 | 04-重建二叉树 | 递归 | ✔ | 递归思想 |
9.21 | 05-用两个栈实现队列 | 栈和队列 | ✔ | shift unshift push pop |
9.22 | 06-旋最转数组的小数字 | 二分查找 | ✔ | |
9.22 | 07-斐波那契数列 | 动态规划 递归 备忘录 | ✔ | 带备忘录的递归 |
9.22 | 08-跳台阶 | 动态规划 递归 | ✔ | |
9.22 | 09-变态跳台阶 | 动态规划 递归 | ✔ | 状态转移方程 要抓住一些关系 |
9.22 | 10-矩形覆盖 | 动态规划 递归 | ✔ | 状态转移方程 |
9.22 | 11-二进制中1的个数 | 进制转换 | ✔ | 在32位下,JS中负数的补码等于2^32-其绝对值 |
9.22 | 12-数值的整数次方 | 快速幂 | ✔ | 快速幂算法 |
9.23 | 13-调整数组顺序使奇数位于偶数前面 | in-place算法 | ✔ | |
9.24 | 14-链表中倒数第K个节点 | 链表 | ✔ | 快慢指针 |
9.26 | 15-反转链表 | 链表 | ✔ | 三个指针 和第三题一样 |
9.26 | 16-合并两个排序链表 | 链表 | ✔ | 新创建一个链表用于存储 并用另一个变量来添加 |
9.27 | 17-树的子结构 | 树 递归 | ✔ | 递归及前序遍历思想 |
9.28 | 18-二叉树的镜像 | 二叉树 递归 | ✔ | 递归 从下至上 从上至下 |
9.28 | 19-顺时针打印矩阵 | 矩阵(数学分析) | ✔ | 坐标的表示 (0,0)(0,1) |
9.28 | 20-包含min函数的栈 | 栈 | ✔ | |
9.29 | 21-栈的压入、弹出序列 | 栈 | ✔ | 使用辅助栈模拟栈的出栈行为 |
9.30 | 22_从上往下打印二叉树 | 树 队列 | ✔ | 使用一个队列实现 广度优先遍历 |
10.1 | 23_二叉搜索树的后续遍历序列 | 后序遍历 | ✔ | 二叉搜索树的定义 |
10.2 | 24_二叉树中和为某一值的路径 | 树 递归 | ✔ | 前序遍历 |
10.3 | 25_复杂链表的复制 | 链表 深拷贝 | ✔ | |
10.4 | 26_二叉搜索树与双向链表 | 双向链表 二叉搜索树 | ✔ | 牛客没通过 力扣通过了... |
10.5 | 27_字符串的排列 | 递归 回溯 | ✔ | |
10.6 | 28_数组中出现次数超过一半的数字 | 找中位数 | ✔ | |
10.7 | 29_最小的k个数 | ✔ | ||
10.8 | 30_连续子数组的最大和 | 动态规划 | ✔ | |
10.9 | 31_整数中1出现的次数 | 数学问题 | ✔ | |
10.10 | 32_把数组排成最小的数 | 排序 | ✔ | |
10.10 | 33_丑数 | 动态规划 | ✔ | |
10.11 | 34_第一个只出现一次的字符 | 哈希表 | ✔ | |
10.12 | 35_数组中的逆序对 | 归并排序 | ✔ | |
10.13 | 36_两个链表的第一个公共结点 | 双指针法 | ✔ | |
10.13 | 37_数字在升序数组中出现的次数 | 二分 | ✔ | |
10.19 | 38_二叉树的深度 | 递归 | ✔ | |
10.20 | 39_平衡二叉树 | 树 递归 | ✔ | |
10.20 | 40_数组中只出现一次的数字 | 哈希 | ✔ | |
10.20 | 41_和为S的连续正数序列 | 滑动窗口 暴力 | ✔ | 滑动窗口 |
10.20 | 42_和为S的两个数组 | 双指针 | ✔ | |
10.21 | 43_左旋转字符串 | api调用 | ✔ | str.slice() arr.join() |
10.21 | 44_翻转单词顺序列 | api调用 | ✔ | str.slice() arr.join() |
10.21 | 45_扑克牌顺子 | 数学问题 | ✔ | 最大值与最小值的差值应该小于5 |
10.21 | 46_孩子们的游戏 | 数学问题 | ✔ | 孩子下标的选取 (index + m - 1) % n |
10.21 | 47_求1+2+3...+n | 递归 逻辑与 | ✔ | |
10.21 | 48_不用加减乘除做加法 | 位运算 | ✔ | |
10.23 | 49_把字符串转换成整数 | 数组 | ✔ | |
10.23 | 50_数组中重复的数字 | 哈希表 | ✔ | |
10.23 | 51_构建乘积数组 | 矩阵 上三角和下三角 | ✔ | |
10.24 | 52_正则表达式匹配.js | ✔ | ||
10.26 | 53_表示数值的字符串.js | isNaN | ✔ | |
10.27 | 54_字符流中第一个不重复的字符.js | 哈希表 | ✔ | |
10.31 | 55_链表中环的入口节点.js | 哈希数组 | ✔ | |
10.31 | 56_删除链表中重复的节点.js | 链表 | ✔ | |
11.1 | 57_二叉树的下一个节点.js | 二叉树找规律 | ✔ | |
11.2 | 58_对称的二叉树.js | 二叉树镜像 | ✔ | |
11.3 | 59_按之字形打印二叉树.js | 广度优先遍历 | ✔ | |
11.4 | 60_把二叉树打印成多行.js | 广度优先遍历 | ✔ | |
11.4 | 🎉61_序列化二叉树.js | 广度优先遍历 | ✔ | |
11.6 | 62_二叉搜索树的第k个结点.js | 中序遍历 | ✔ | |
11.7 | 63_数据流中的中位数.js | 数组排序后判奇偶 | ✔ | |
11.9 | 64_滑动窗口的最大值.js | 滑动窗口 | ✔ | 数量是 数组长度 - size + 1 |
11.12 | 65_矩阵中的路径.js | 深度优先 回溯 | ✔ | 递归 |
11.12 | 66_机器人的运动范围.js | 深度优先 回溯 | ✔ | 和上一题差不多 |
11.13 | 67_剪绳子.js | 动态规划 | ✔ | dp[i] = 3 * dp[i - 3] |
11.22 邂逅React开发