https://github.com/louzhedong/blog
前端基础,深入以及算法数据结构
https://github.com/louzhedong/blog
algrithm blog front-end-development javascript
Last synced: 2 months ago
JSON representation
前端基础,深入以及算法数据结构
- Host: GitHub
- URL: https://github.com/louzhedong/blog
- Owner: louzhedong
- Created: 2018-03-26T11:47:10.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-09-09T13:00:36.000Z (almost 4 years ago)
- Last Synced: 2024-11-11T10:42:20.528Z (8 months ago)
- Topics: algrithm, blog, front-end-development, javascript
- Homepage:
- Size: 363 KB
- Stars: 934
- Watchers: 41
- Forks: 84
- Open Issues: 258
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-github-star - blog
README
[](https://github.com/louzhedong/blog/stargazers)
字节跳动长期招聘各个岗位的员工,扫下面二维码直接进入内推渠道,反馈快哦~~
不清楚投哪个岗位,也可以发简历到我邮箱 [email protected] ,由我来帮你选择合适的岗位~~~

# 文章列表
## HTML
[1、图片分辨率切换](https://github.com/louzhedong/blog/issues/97)
[2、BFC原理解析](https://github.com/louzhedong/blog/issues/145)
[3、前端跨域问题总结](https://github.com/louzhedong/blog/issues/27)
[4、DOMContentLoaded解析](https://github.com/louzhedong/blog/issues/209)
[5、监听页面关闭](https://github.com/louzhedong/blog/issues/207)
[6、浏览器缓存详解](https://github.com/louzhedong/blog/issues/177)
[7、图片懒加载以及尺寸适配](https://github.com/louzhedong/blog/issues/182)
[8、DOM操作性能提升](https://github.com/louzhedong/blog/issues/179)
[9、viewport深入理解](https://github.com/louzhedong/blog/issues/236)
[10、浏览器理解](https://github.com/louzhedong/blog/issues/219)
## CSS
[1、css 水平垂直居中实现方式](https://github.com/louzhedong/blog/issues/2)
[2、z-index总结](https://github.com/louzhedong/blog/issues/95)
[3、几种页面Loading动画](https://github.com/louzhedong/blog/issues/211)
## JS
[1、面试中会遇到的正则题](https://github.com/louzhedong/blog/issues/3)
[2、深浅拷贝实现](https://github.com/louzhedong/blog/issues/108)
[3、原生JS实现轮播图](https://github.com/louzhedong/blog/issues/120)
[4、方法链式调用](https://github.com/louzhedong/blog/issues/165)
[5、JS动态引入](https://github.com/louzhedong/blog/issues/167)
[6、JS中的创建对象](https://github.com/louzhedong/blog/issues/176)
[7、手写AJAX](https://github.com/louzhedong/blog/issues/208)
[8、Javascript继承](https://github.com/louzhedong/blog/issues/134)
[9、原生JS实现hash路由](https://github.com/louzhedong/blog/issues/119)
[10、call和apply实现](https://github.com/louzhedong/blog/issues/106)
[11、bind实现](https://github.com/louzhedong/blog/issues/107)
[12、new原理及实现](https://github.com/louzhedong/blog/issues/143)
[13、Promise规范及实现](https://github.com/louzhedong/blog/issues/180)
[14、图片压缩](https://github.com/louzhedong/blog/issues/164)
[15、JS中的this](https://github.com/louzhedong/blog/issues/172)
[16、JS执行上下文] (待完成)
[17、JavaScript异步编程](待完成)
[18、Proxy使用](https://github.com/louzhedong/blog/issues/229)
[19、初识正则表达式引擎](https://github.com/louzhedong/blog/issues/261)
## NODE
[1、Node.js中package.json中库版本号详解](https://github.com/louzhedong/blog/issues/178)
## 动画系列
[1、前端动画(一)](https://github.com/louzhedong/blog/issues/181)
## 工程化
[1、编写一个模块化组件](https://github.com/louzhedong/blog/issues/146)
[2、实现一个模板引擎] (待完成)
[3、webpack原理] (待完成)
[4、DDD(领域驱动设计)](https://github.com/louzhedong/blog/issues/232)
[5、git基础](https://github.com/louzhedong/blog/issues/231)
[6、灰度发布] (待完成)
[7、实现一个简单的vscode 插件](https://github.com/louzhedong/blog/issues/260)
## 设计模式
[1、单例模式](https://github.com/louzhedong/blog/issues/212)
[2、工厂模式](https://github.com/louzhedong/blog/issues/213)
[3、模板方法模式](https://github.com/louzhedong/blog/issues/214)
[4、代理模式](https://github.com/louzhedong/blog/issues/215)
[5、中介者模式](https://github.com/louzhedong/blog/issues/216)
[6、命令模式](https://github.com/louzhedong/blog/issues/217)
[7、装饰器模式](https://github.com/louzhedong/blog/issues/218)
[8、策略模式](https://github.com/louzhedong/blog/issues/220)
[9、适配器模式](https://github.com/louzhedong/blog/issues/221)
[10、迭代器模式](https://github.com/louzhedong/blog/issues/222)
[11、组合模式](https://github.com/louzhedong/blog/issues/223)
[12、观察者模式](https://github.com/louzhedong/blog/issues/225)
[13、状态模式](https://github.com/louzhedong/blog/issues/226)
[14、解释器模式](https://github.com/louzhedong/blog/issues/227)
[15、享元模式](https://github.com/louzhedong/blog/issues/228)
## Vue系列
[1、Vue服务端渲染项目配置](https://github.com/louzhedong/blog/issues/30)
[2、vue+jest配置](https://github.com/louzhedong/blog/issues/166)
[3、面试题:你能写一个Vue的双向数据绑定吗?](https://github.com/louzhedong/blog/issues/4)
[4、做一个Vue的Toast组件](https://github.com/louzhedong/blog/issues/163)
[5、Vue中滚动加载更多的实现](https://github.com/louzhedong/blog/issues/174)
[6、Vue中Lazyload的一种实现](https://github.com/louzhedong/blog/issues/175)
[7、Vuex原理] (待完成)
[8、VueRouter原理] (待完成)
## React系列
[1、React高阶组件](https://github.com/louzhedong/blog/issues/1)
[2、React diff算法] (待完成)
[3、实现一个简单的Redux](https://github.com/louzhedong/blog/issues/234)
[4、ReactRouter原理] (待完成)
[5、React Fiber原理](https://github.com/louzhedong/blog/issues/204)
[6、Immutable解读](https://github.com/louzhedong/blog/issues/224)
## 面试习题系列
[1、面试题1](https://github.com/louzhedong/blog/issues/131)
[2、面试题2](https://github.com/louzhedong/blog/issues/132)
[3、面试题3](https://github.com/louzhedong/blog/issues/206)
[4、面试](https://github.com/louzhedong/blog/issues/245)
## 基础数据结构和算法
[1、快速排序](https://github.com/louzhedong/blog/issues/127)
[2、冒泡排序](https://github.com/louzhedong/blog/issues/183)
[3、选择排序](https://github.com/louzhedong/blog/issues/184)
[4、插入排序](https://github.com/louzhedong/blog/issues/185)
[5、希尔排序](https://github.com/louzhedong/blog/issues/186)
[6、桶排序](https://github.com/louzhedong/blog/issues/187)
[7、基数排序](https://github.com/louzhedong/blog/issues/188)
[8、归并排序](https://github.com/louzhedong/blog/issues/189)
[9、堆排序](https://github.com/louzhedong/blog/issues/190)
[10、计数排序](https://github.com/louzhedong/blog/issues/191)
[11、构建二叉搜索树](https://github.com/louzhedong/blog/issues/192)
[12、二叉树的中序遍历](https://github.com/louzhedong/blog/issues/195)
[13、二叉树的先序遍历](https://github.com/louzhedong/blog/issues/196)
[14、二叉树的后序遍历](https://github.com/louzhedong/blog/issues/197)
[15、哈夫曼编码](https://github.com/louzhedong/blog/issues/205)
[16、短链接原理](https://github.com/louzhedong/blog/issues/133)
[17、AVL树](https://github.com/louzhedong/blog/issues/233)
## 每天一道算法题
### 栈
[1、棒球比赛](https://github.com/louzhedong/blog/issues/237)
[2、基本计算器 II](https://github.com/louzhedong/blog/issues/238)
[3、比较含退格的字符串](https://github.com/louzhedong/blog/issues/239)
[4、删除最外层的括号](https://github.com/louzhedong/blog/issues/240)
[5、删除字符串中的所有相邻重复项](https://github.com/louzhedong/blog/issues/241)
[6、验证二叉树的前序序列化](https://github.com/louzhedong/blog/issues/242)
[7、扁平化嵌套列表迭代器](https://github.com/louzhedong/blog/issues/243)
[8、移掉K位数字](https://github.com/louzhedong/blog/issues/244)
[9、去除重复字母](https://github.com/louzhedong/blog/issues/246)
[10、每日温度](https://github.com/louzhedong/blog/issues/250)
[11、行星碰撞](https://github.com/louzhedong/blog/issues/251)
[12、字符串解码](https://github.com/louzhedong/blog/issues/252)
[13、反转每对括号间的子串](https://github.com/louzhedong/blog/issues/257)
### 双指针
[1、盛最多水的容器](https://github.com/louzhedong/blog/issues/5)
[2、四数之和](https://github.com/louzhedong/blog/issues/9)
[3、删除链表的倒数第N个节点](https://github.com/louzhedong/blog/issues/11)
[4、不重复的工牌](https://github.com/louzhedong/blog/issues/21)
[5、分类颜色](https://github.com/louzhedong/blog/issues/29)
[6、最接近的三数之和](https://github.com/louzhedong/blog/issues/45)
[7、接雨水](https://github.com/louzhedong/blog/issues/52)
[8、螺旋矩阵](https://github.com/louzhedong/blog/issues/57)
[9、螺旋矩阵 II](https://github.com/louzhedong/blog/issues/60)
[10、除自身以外数组的乘积](https://github.com/louzhedong/blog/issues/148)
[11、丑数2](https://github.com/louzhedong/blog/issues/199)
[12、最高频元素的频数](https://github.com/louzhedong/blog/issues/248)
[13、所有元音按顺序排布的最长子字符串](https://github.com/louzhedong/blog/issues/249)
### 动态规划
[1、爬楼梯](https://github.com/louzhedong/blog/issues/6)
[2、使用最小花费爬楼梯](https://github.com/louzhedong/blog/issues/7)
[3、正则表达式匹配](https://github.com/louzhedong/blog/issues/42)
[4、通配符匹配](https://github.com/louzhedong/blog/issues/53)
[5、跳跃游戏 II](https://github.com/louzhedong/blog/issues/54)
[6、跳跃游戏](https://github.com/louzhedong/blog/issues/58)
[7、不同路径](https://github.com/louzhedong/blog/issues/63)
[8、不同路径 II](https://github.com/louzhedong/blog/issues/64)
[9、最小路径和](https://github.com/louzhedong/blog/issues/65)
[10、编辑距离](https://github.com/louzhedong/blog/issues/70)
[11、扰乱字符串](https://github.com/louzhedong/blog/issues/76)
[12、解码方法](https://github.com/louzhedong/blog/issues/78)
[13、交错字符串](https://github.com/louzhedong/blog/issues/79)
[14、不同的子序列](https://github.com/louzhedong/blog/issues/90)
[15、三角形最小路径和](https://github.com/louzhedong/blog/issues/96)
[16、买卖股票的最佳时机 III](https://github.com/louzhedong/blog/issues/100)
[17、分割回文串 II](https://github.com/louzhedong/blog/issues/109)
[18、单词拆分](https://github.com/louzhedong/blog/issues/113)
[19、地下城游戏](https://github.com/louzhedong/blog/issues/136)
[20、打家劫舍](https://github.com/louzhedong/blog/issues/156)
[21、最大的以 1 为边界的正方形](https://github.com/louzhedong/blog/issues/171)
[22、完全平方数](https://github.com/louzhedong/blog/issues/202)
[23、删除并获得点数](https://github.com/louzhedong/blog/issues/253)
[24、奇怪的打印机](https://github.com/louzhedong/blog/issues/256)
### 递归
[1、电话号码的字母组合](https://github.com/louzhedong/blog/issues/8)
[2、括号组合](https://github.com/louzhedong/blog/issues/10)
[3、组合总和](https://github.com/louzhedong/blog/issues/13)
[4、组合总和2](https://github.com/louzhedong/blog/issues/14)
[5、全排列](https://github.com/louzhedong/blog/issues/18)
[6、全排列2](https://github.com/louzhedong/blog/issues/19)
[7、组合](https://github.com/louzhedong/blog/issues/32)
[8、子集](https://github.com/louzhedong/blog/issues/33)
[9、单词搜索](https://github.com/louzhedong/blog/issues/34)
[10、复原IP地址](https://github.com/louzhedong/blog/issues/38)
[11、子集 II](https://github.com/louzhedong/blog/issues/41)
[12、格雷编码](https://github.com/louzhedong/blog/issues/77)
[13、Pow(x, n)](https://github.com/louzhedong/blog/issues/82)
[14、路径总和](https://github.com/louzhedong/blog/issues/87)
[15、路径总和 II](https://github.com/louzhedong/blog/issues/88)
[16、求根到叶子节点数字之和](https://github.com/louzhedong/blog/issues/104)
[17、分割回文串](https://github.com/louzhedong/blog/issues/105)
[18、克隆图](https://github.com/louzhedong/blog/issues/110)
[19、二叉搜索树迭代器](https://github.com/louzhedong/blog/issues/135)
[20、组合总和 III](https://github.com/louzhedong/blog/issues/157)
[21、实现 Trie (前缀树)](https://github.com/louzhedong/blog/issues/160)
[22、K 进制表示下的各位数字总和](https://github.com/louzhedong/blog/issues/247)
### 辗转相除
[1、两数相除](https://github.com/louzhedong/blog/issues/12)
[2、丑数](https://github.com/louzhedong/blog/issues/198)
### 数组
[1、缺失的第一个正数](https://github.com/louzhedong/blog/issues/15)
[2、有效的数独](https://github.com/louzhedong/blog/issues/16)
[3、旋转图形](https://github.com/louzhedong/blog/issues/20)
[4、合并区间](https://github.com/louzhedong/blog/issues/23)
[5、下一个排序](https://github.com/louzhedong/blog/issues/24)
[6、矩阵置零](https://github.com/louzhedong/blog/issues/26)
[7、删除排序数组中的重复项 II](https://github.com/louzhedong/blog/issues/35)
[8、插入区间](https://github.com/louzhedong/blog/issues/59)
[9、第k个排列](https://github.com/louzhedong/blog/issues/61)
[10、柱状图中最大的矩形](https://github.com/louzhedong/blog/issues/72)
[11、最大矩形](https://github.com/louzhedong/blog/issues/73)
[12、杨辉三角](https://github.com/louzhedong/blog/issues/93)
[13、杨辉三角 II](https://github.com/louzhedong/blog/issues/94)
[14、买卖股票的最佳时机](https://github.com/louzhedong/blog/issues/98)
[15、买卖股票的最佳时机 II](https://github.com/louzhedong/blog/issues/99)
[16、单词接龙](https://github.com/louzhedong/blog/issues/103)
[17、只出现一次的数字 II](https://github.com/louzhedong/blog/issues/111)
[18、LRU缓存机制](https://github.com/louzhedong/blog/issues/121)
[19、直线上最多的点数](https://github.com/louzhedong/blog/issues/124)
[20、逆波兰表达式求值](https://github.com/louzhedong/blog/issues/125)
[21、乘积最大子序列](https://github.com/louzhedong/blog/issues/128)
[22、寻找旋转排序数组中的最小值](https://github.com/louzhedong/blog/issues/129)
[23、旋转数组](https://github.com/louzhedong/blog/issues/138)
[24、用栈实现队列](https://github.com/louzhedong/blog/issues/151)
[25、只出现一次的数字 III](https://github.com/louzhedong/blog/issues/152)
[26、搜索二维矩阵 II](https://github.com/louzhedong/blog/issues/153)
[27、存在重复元素 II](https://github.com/louzhedong/blog/issues/158)
[28、最大唯一数](https://github.com/louzhedong/blog/issues/168)
[29、递减元素使数组呈锯齿状](https://github.com/louzhedong/blog/issues/173)
[30、缺失数字](https://github.com/louzhedong/blog/issues/193)
[31、H指数](https://github.com/louzhedong/blog/issues/200)
[32、前K个高频单词](https://github.com/louzhedong/blog/issues/255)
### 字符串
[1、字符串相乘](https://github.com/louzhedong/blog/issues/17)
[2、字母异位词分组](https://github.com/louzhedong/blog/issues/22)
[3、字符串转整数 (atoi)](https://github.com/louzhedong/blog/issues/44)
[4、与所有单词相关联的字串](https://github.com/louzhedong/blog/issues/49)
[5、最长有效括号](https://github.com/louzhedong/blog/issues/50)
[6、文本左右对齐](https://github.com/louzhedong/blog/issues/66)
[7、简化路径](https://github.com/louzhedong/blog/issues/67)
[8、最小覆盖子串](https://github.com/louzhedong/blog/issues/71)
[9、验证回文串](https://github.com/louzhedong/blog/issues/101)
[10、翻转字符串里的单词](https://github.com/louzhedong/blog/issues/126)
[11、最大数](https://github.com/louzhedong/blog/issues/137)
[12、重复的DNA序列](https://github.com/louzhedong/blog/issues/159)
[13、同构字符串](https://github.com/louzhedong/blog/issues/162)
[14、阿姆斯特朗数](https://github.com/louzhedong/blog/issues/169)
[15、字母板上的路径](https://github.com/louzhedong/blog/issues/170)
[16、单词规律](https://github.com/louzhedong/blog/issues/201)
### 二分查找
[1、搜索旋转排序数组](https://github.com/louzhedong/blog/issues/25)
[2、搜索二维矩阵](https://github.com/louzhedong/blog/issues/28)
[3、搜索旋转排序数组 II](https://github.com/louzhedong/blog/issues/36)
[4、寻找峰值](https://github.com/louzhedong/blog/issues/130)
[5、计数质数](https://github.com/louzhedong/blog/issues/161)
[6、第一个错误的版本](https://github.com/louzhedong/blog/issues/194)
### 链表
[1、删除排序链表中的重复元素 II](https://github.com/louzhedong/blog/issues/37)
[2、两数相加](https://github.com/louzhedong/blog/issues/43)
[3、合并K个排序链表](https://github.com/louzhedong/blog/issues/46)
[4、两两交换链表中的节点](https://github.com/louzhedong/blog/issues/47)
[5、k个一组翻转链表](https://github.com/louzhedong/blog/issues/48)
[6、旋转链表](https://github.com/louzhedong/blog/issues/62)
[7、分隔链表](https://github.com/louzhedong/blog/issues/68)
[8、反转链表 II](https://github.com/louzhedong/blog/issues/69)
[9、填充同一层的兄弟节点](https://github.com/louzhedong/blog/issues/91)
[10、填充同一层的兄弟节点 II](https://github.com/louzhedong/blog/issues/92)
[11、复制带随机指针的链表](https://github.com/louzhedong/blog/issues/112)
[12、环形链表](https://github.com/louzhedong/blog/issues/114)
[13、环形链表 II](https://github.com/louzhedong/blog/issues/115)
[14、重排链表](https://github.com/louzhedong/blog/issues/116)
[15、对链表进行插入排序](https://github.com/louzhedong/blog/issues/122)
[16、排序链表](https://github.com/louzhedong/blog/issues/123)
[17、移除链表元素](https://github.com/louzhedong/blog/issues/144)
[18、回文链表](https://github.com/louzhedong/blog/issues/154)
### 回溯法
[1、解数独](https://github.com/louzhedong/blog/issues/51)
[2、N皇后](https://github.com/louzhedong/blog/issues/55)
[3、N皇后 II](https://github.com/louzhedong/blog/issues/56)
[4、给表达式添加运算符](https://github.com/louzhedong/blog/issues/203)
### 二叉树
[1、不同的二叉搜索树](https://github.com/louzhedong/blog/issues/75)
[2、不同的二叉搜索树 II](https://github.com/louzhedong/blog/issues/74)
[3、二叉树的中序遍历](https://github.com/louzhedong/blog/issues/39)
[4、从前序与中序遍历序列构造二叉树](https://github.com/louzhedong/blog/issues/40)
[5、验证二叉搜索树](https://github.com/louzhedong/blog/issues/80)
[6、恢复二叉搜索树](https://github.com/louzhedong/blog/issues/81)
[7、二叉树的锯齿形层次遍历](https://github.com/louzhedong/blog/issues/83)
[8、从中序与后序遍历序列构造二叉树](https://github.com/louzhedong/blog/issues/84)
[9、有序链表转换二叉搜索树](https://github.com/louzhedong/blog/issues/85)
[10、二叉树的最小深度](https://github.com/louzhedong/blog/issues/86)
[11、二叉树展开为链表](https://github.com/louzhedong/blog/issues/89)
[12、二叉树中的最大路径和](https://github.com/louzhedong/blog/issues/102)
[13、二叉树的前序遍历](https://github.com/louzhedong/blog/issues/117)
[14、二叉树的后序遍历](https://github.com/louzhedong/blog/issues/118)
[15、二叉树的右视图](https://github.com/louzhedong/blog/issues/139)
[16、完全二叉树的节点个数](https://github.com/louzhedong/blog/issues/140)
[17、二叉搜索树中第K小的元素](https://github.com/louzhedong/blog/issues/141)
[18、二叉搜索树的最近公共祖先](https://github.com/louzhedong/blog/issues/142)
[19、二叉树的最近公共祖先](https://github.com/louzhedong/blog/issues/147)
[20、二叉树的所有路径](https://github.com/louzhedong/blog/issues/155)
[21、把二叉搜索树转换为累加树](https://github.com/louzhedong/blog/issues/235)
### 位运算
[1、解码异或后的数组](https://github.com/louzhedong/blog/issues/254)
### 前缀和
[1、连续的子数组和](https://github.com/louzhedong/blog/issues/258)
[2、连续数组](https://github.com/louzhedong/blog/issues/259)