# coding **Repository Path**: vue_50/coding ## Basic Information - **Project Name**: coding - **Description**: 📒【前端算法锦集】面试全集、Leetcode、JS手写、React/Vue框架、Typescript、Nodejs字节阿里大厂面试题代码实现✏️🌆 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-04 - **Last Updated**: 2025-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 前端代码 该项目包含了前端的一些常用的 `JS`、`CSS`、`JS 库`、以及`leetcode算法`、`大厂面试题`、`JS手写题`的代码实现 前端算法面试,这一项目足够了~ ## 1. 补充题 [1.生成 6 位验证码](https://github.com/amelia-coding/coding/blob/master/!补充题%201.生成6位验证码.js) [2.实现 arr[-1]的访问](https://github.com/amelia-coding/coding/blob/master/!补充题%202.实现arr[-1]的访问.js) [3.根据权重随机返回一个人](https://github.com/amelia-coding/coding/blob/master/!补充题%203.根据权重随机返回一个人.js) [5.求一个区间内的 X 值](https://github.com/amelia-coding/coding/blob/master/!补充题%205.求一个区间内的X值.js) [7. css 三角](https://github.com/amelia-coding/coding/blob/master/!补充题%207.css三角.js) [8.间隔 3 秒打印一次](https://github.com/amelia-coding/coding/blob/master/!补充题%208.间隔3秒打印一次.js) [9.css 扇形](https://github.com/amelia-coding/coding/blob/master/!补充题%209.css扇形.js) [10.打印子节点](https://github.com/amelia-coding/coding/blob/master/!补充题%2010.打印子节点.js.js) [11.二维数组的排列组合](https://github.com/amelia-coding/coding/blob/master/!补充题%2011.二维数组的排列组合.js) [12.生成随机字符串](https://github.com/amelia-coding/coding/blob/master/!补充题%2012.生成随机字符串.js) [13.团灭 6 道股票题](https://github.com/amelia-coding/coding/blob/master/!补充题%2013.团灭6道股票题.js) [14.解析上传的 excel 表格](https://github.com/amelia-coding/coding/blob/master/!补充题%2014.解析上传的excel表格.js) [15. parseQueryString](https://github.com/amelia-coding/coding/blob/master/!补充题%2015.解析url参数.js) [16.可控的异步请求并发](https://github.com/amelia-coding/coding/blob/master/!补充题%2016.可控的异步请求并发.js) [17. 给子节点添加父节点 ID](https://github.com/amelia-coding/coding/blob/master/!补充题%2017.给子节点添加父节点ID.js) [18.求数组中能两两相除的最长子序列](https://github.com/amelia-coding/coding/blob/master/!补充题%2018.求数组中能两两相除的最长子序列.js) [19.实现数组的多种去重方法](https://github.com/amelia-coding/coding/blob/master/!补充题%2019.实现数组的多种去重方法.js) [20.和为 K 的子序列](https://github.com/amelia-coding/coding/blob/master/!补充题%2020.和为K的子序列.js) [21.递增递减数组最大值](https://github.com/amelia-coding/coding/blob/master/!补充题%2021.递增递减数组最大值.js) [22.获取对象的链式属性](https://github.com/amelia-coding/coding/blob/master/!补充题%2019.获取对象的链式属性.js) [23.对象偏平化](https://github.com/amelia-coding/coding/blob/master/!补充题%20123.对象偏平化.js) [24. MergeTopOf](https://github.com/amelia-coding/coding/blob/master/!补充题%2024.MergeTopOf.js) [25. 二叉树中指定节点间的距离](https://github.com/amelia-coding/coding/blob/master/!补充题%2025.二叉树中指定节点间的距离.js) [26. 生成随机数](https://github.com/amelia-coding/coding/blob/master/!补充题%2026.生成随机数.js) [27. 模拟红绿灯](https://github.com/amelia-coding/coding/blob/master/!补充题%2027.模拟红绿灯.js) [28. 使用原生 js 操作 dom](https://github.com/amelia-coding/coding/blob/master/!补充题%2028.使用原生js操作dom.js) [29. 按顺序渲染 dom](https://github.com/amelia-coding/coding/blob/master/!补充题%2029.按顺序渲染dom.js) [30. 实现高度是宽度的一半](https://github.com/amelia-coding/coding/blob/master/!补充题%2030.实现高度是宽度的一半.js) ## 2. 面试题 [字节一面:给定一个二叉树, 找到该树中两个指定节点间的最短距离](https://github.com/sisterAn/JavaScript-Algorithms/issues/82) [面经](https://github.com/amelia-coding/coding/blob/master/面经.md) ## 3. Leetcode ### 二叉树 [144. 二叉树的前序遍历](https://github.com/amelia-coding/coding/blob/master/144.%20二叉树的前序遍历.js?_blank) [94. 二叉树的中序遍历](https://github.com/amelia-coding/coding/blob/master/94.%20二叉树的中序遍历.js?_blank) [145. 二叉树的后序遍历](https://github.com/amelia-coding/coding/blob/master/145.%20二叉树的后序遍历.js?_blank) [102. 二叉树的层序遍历](https://github.com/amelia-coding/coding/blob/master/102.%20二叉树的层序遍历.js?_blank) [105. 前序中序构建二叉树](https://github.com/amelia-coding/coding/blob/master/105.%20前序中序构建二叉树.js?_blank) [889. 前序后序构建二叉树](https://github.com/amelia-coding/coding/blob/master/889.%20前序后序构建二叉树.js?_blank) [199. 二叉树的右视图](https://github.com/amelia-coding/coding/blob/master/199.%20二叉树的右视图.js?_blank) [101. 对称二叉树](https://github.com/amelia-coding/coding/blob/master/101.%20对称二叉树.js?_blank) ### 二叉树进阶 [236. 二叉树的最近公共祖先](https://github.com/amelia-coding/coding/blob/master/236.%20二叉树的最近公共祖先.js) [110. 平衡二叉树](https://github.com/amelia-coding/coding/blob/master/110.%20平衡二叉树.js) [111. 二叉树的最小深度](https://github.com/amelia-coding/coding/blob/master/111.%20二叉树的最小深度.js) [104. 二叉树的最大深度](https://github.com/amelia-coding/coding/blob/master/104.%20二叉树的最大深度.js) [112. 路径总和](https://github.com/amelia-coding/coding/blob/master/112.%20路径总和.js) [113. 路径总和 II](https://github.com/amelia-coding/coding/blob/master/113.%20路径总和%20II.js) ### 链表 [22. 链表中倒数第 k 个节点](https://github.com/amelia-coding/coding/blob/master/22.%20链表中倒数第k个节点.js) [206. 反转链表](https://github.com/amelia-coding/coding/blob/master/206.%20反转链表.js) ### 字符串 [205. 同构字符串](https://github.com/amelia-coding/coding/blob/master/205.%20同构字符串.js) ### 回溯、排列 [39. 组合总和](https://github.com/amelia-coding/coding/blob/master/39.%20组合总和.js) [40. 组合总和 II](https://github.com/amelia-coding/coding/blob/master/40.%20组合总和%20II.js) [216. 组合总和 III](https://github.com/amelia-coding/coding/blob/master/216.%20组合总和%20III.js) [46. 全排列](https://github.com/amelia-coding/coding/blob/master/46.%20全排列.js) [47. 全排列 II](https://github.com/amelia-coding/coding/blob/master/47.%20全排列%20II.js) [77. 组合](https://github.com/amelia-coding/coding/blob/master/77.%20组合.js) [78. 子集](https://github.com/amelia-coding/coding/blob/master/78.子集.js) [90. 子集 II](https://github.com/amelia-coding/coding/blob/master/90.%20子集%20II.js) ### 股票问题 [121. 买卖股票的最佳时机](https://github.com/amelia-coding/coding/blob/master/121.%20买卖股票的最佳时机.js) [122. 买卖股票的最佳时机 II](https://github.com/amelia-coding/coding/blob/master/122.%20买卖股票的最佳时机%20II.js) [123. 买卖股票的最佳时机 III](https://github.com/amelia-coding/coding/blob/master/123.%20买卖股票的最佳时机%20III.js) [188. 买卖股票的最佳时机 IV](https://github.com/amelia-coding/coding/blob/master/188.%20买卖股票的最佳时机%20IV.js) [309. 最佳买卖股票时机含冷冻期](https://github.com/amelia-coding/coding/blob/master/309.%20最佳买卖股票时机含冷冻期.js) [714. 买卖股票的最佳时机含手续费](https://github.com/amelia-coding/coding/blob/master/714.%20买卖股票的最佳时机含手续费.js) ### 单调栈 [496. 下一个更大元素 I](https://github.com/amelia-coding/coding/blob/master/206.%20反转链表.js) [739. 每日温度](https://github.com/amelia-coding/coding/blob/master/206.%20反转链表.js) ### 区间 [56. 合并区间](https://github.com/amelia-coding/coding/blob/master/56.%20合并区间.js) [57. 插入区间](https://github.com/amelia-coding/coding/blob/master/57.%20插入区间.js) ### 其他 [146. LRU 缓存机制](https://github.com/amelia-coding/coding/blob/master/146.%20LRU缓存机制.js) ### Leetcode 总结 双指针:同向指针 双向指针 指针保存的是元素的索引位置 矩阵深搜系列: 矩阵中的路径 岛屿数量 机器人的运动范围 子数组:前缀和滑动窗口动态规划 ### 其他 [labuladong](https://mp.weixin.qq.com/s/sT6_sHuptgwg9A4KxQfGSg) [codeTop](https://codetop.cc/home) [手写算法](https://github.com/scofieldfan/turtle-rock) [牛客网](https://www.nowcoder.com/exam/oj?page=1&pageSize=100&search=&tab=%E7%AE%97%E6%B3%95%E7%AF%87&topicId=117) [字节跳动算法](https://juejin.cn/post/6947842412102287373)