louzhedong / blog

前端基础,深入以及算法数据结构

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub stars

字节跳动长期招聘各个岗位的员工,扫下面二维码直接进入内推渠道,反馈快哦~~

不清楚投哪个岗位,也可以发简历到我邮箱 michael_lzd@163.com ,由我来帮你选择合适的岗位~~~

image

文章列表

HTML

1、图片分辨率切换

2、BFC原理解析

3、前端跨域问题总结

4、DOMContentLoaded解析

5、监听页面关闭

6、浏览器缓存详解

7、图片懒加载以及尺寸适配

8、DOM操作性能提升

9、viewport深入理解

10、浏览器理解

CSS

1、css 水平垂直居中实现方式

2、z-index总结

3、几种页面Loading动画

JS

1、面试中会遇到的正则题

2、深浅拷贝实现

3、原生JS实现轮播图

4、方法链式调用

5、JS动态引入

6、JS中的创建对象

7、手写AJAX

8、Javascript继承

9、原生JS实现hash路由

10、call和apply实现

11、bind实现

12、new原理及实现

13、Promise规范及实现

14、图片压缩

15、JS中的this

[16、JS执行上下文] (待完成)

[17、JavaScript异步编程](待完成)

18、Proxy使用

19、初识正则表达式引擎

NODE

1、Node.js中package.json中库版本号详解

动画系列

1、前端动画(一)

工程化

1、编写一个模块化组件

[2、实现一个模板引擎] (待完成)

[3、webpack原理] (待完成)

4、DDD(领域驱动设计)

5、git基础

[6、灰度发布] (待完成)

7、实现一个简单的vscode 插件

设计模式

1、单例模式

2、工厂模式

3、模板方法模式

4、代理模式

5、中介者模式

6、命令模式

7、装饰器模式

8、策略模式

9、适配器模式

10、迭代器模式

11、组合模式

12、观察者模式

13、状态模式

14、解释器模式

15、享元模式

Vue系列

1、Vue服务端渲染项目配置

2、vue+jest配置

3、面试题:你能写一个Vue的双向数据绑定吗?

4、做一个Vue的Toast组件

5、Vue中滚动加载更多的实现

6、Vue中Lazyload的一种实现

[7、Vuex原理] (待完成)

[8、VueRouter原理] (待完成)

React系列

1、React高阶组件

[2、React diff算法] (待完成)

3、实现一个简单的Redux

[4、ReactRouter原理] (待完成)

5、React Fiber原理

6、Immutable解读

面试习题系列

1、面试题1

2、面试题2

3、面试题3

4、面试

基础数据结构和算法

1、快速排序

2、冒泡排序

3、选择排序

4、插入排序

5、希尔排序

6、桶排序

7、基数排序

8、归并排序

9、堆排序

10、计数排序

11、构建二叉搜索树

12、二叉树的中序遍历

13、二叉树的先序遍历

14、二叉树的后序遍历

15、哈夫曼编码

16、短链接原理

17、AVL树

每天一道算法题

1、棒球比赛

2、基本计算器 II

3、比较含退格的字符串

4、删除最外层的括号

5、删除字符串中的所有相邻重复项

6、验证二叉树的前序序列化

7、扁平化嵌套列表迭代器

8、移掉K位数字

9、去除重复字母

10、每日温度

11、行星碰撞

12、字符串解码

13、反转每对括号间的子串

双指针

1、盛最多水的容器

2、四数之和

3、删除链表的倒数第N个节点

4、不重复的工牌

5、分类颜色

6、最接近的三数之和

7、接雨水

8、螺旋矩阵

9、螺旋矩阵 II

10、除自身以外数组的乘积

11、丑数2

12、最高频元素的频数

13、所有元音按顺序排布的最长子字符串

动态规划

1、爬楼梯

2、使用最小花费爬楼梯

3、正则表达式匹配

4、通配符匹配

5、跳跃游戏 II

6、跳跃游戏

7、不同路径

8、不同路径 II

9、最小路径和

10、编辑距离

11、扰乱字符串

12、解码方法

13、交错字符串

14、不同的子序列

15、三角形最小路径和

16、买卖股票的最佳时机 III

17、分割回文串 II

18、单词拆分

19、地下城游戏

20、打家劫舍

21、最大的以 1 为边界的正方形

22、完全平方数

23、删除并获得点数

24、奇怪的打印机

递归

1、电话号码的字母组合

2、括号组合

3、组合总和

4、组合总和2

5、全排列

6、全排列2

7、组合

8、子集

9、单词搜索

10、复原IP地址

11、子集 II

12、格雷编码

13、Pow(x, n)

14、路径总和

15、路径总和 II

16、求根到叶子节点数字之和

17、分割回文串

18、克隆图

19、二叉搜索树迭代器

20、组合总和 III

21、实现 Trie (前缀树)

22、K 进制表示下的各位数字总和

辗转相除

1、两数相除

2、丑数

数组

1、缺失的第一个正数

2、有效的数独

3、旋转图形

4、合并区间

5、下一个排序

6、矩阵置零

7、删除排序数组中的重复项 II

8、插入区间

9、第k个排列

10、柱状图中最大的矩形

11、最大矩形

12、杨辉三角

13、杨辉三角 II

14、买卖股票的最佳时机

15、买卖股票的最佳时机 II

16、单词接龙

17、只出现一次的数字 II

18、LRU缓存机制

19、直线上最多的点数

20、逆波兰表达式求值

21、乘积最大子序列

22、寻找旋转排序数组中的最小值

23、旋转数组

24、用栈实现队列

25、只出现一次的数字 III

26、搜索二维矩阵 II

27、存在重复元素 II

28、最大唯一数

29、递减元素使数组呈锯齿状

30、缺失数字

31、H指数

32、前K个高频单词

字符串

1、字符串相乘

2、字母异位词分组

3、字符串转整数 (atoi)

4、与所有单词相关联的字串

5、最长有效括号

6、文本左右对齐

7、简化路径

8、最小覆盖子串

9、验证回文串

10、翻转字符串里的单词

11、最大数

12、重复的DNA序列

13、同构字符串

14、阿姆斯特朗数

15、字母板上的路径

16、单词规律

二分查找

1、搜索旋转排序数组

2、搜索二维矩阵

3、搜索旋转排序数组 II

4、寻找峰值

5、计数质数

6、第一个错误的版本

链表

1、删除排序链表中的重复元素 II

2、两数相加

3、合并K个排序链表

4、两两交换链表中的节点

5、k个一组翻转链表

6、旋转链表

7、分隔链表

8、反转链表 II

9、填充同一层的兄弟节点

10、填充同一层的兄弟节点 II

11、复制带随机指针的链表

12、环形链表

13、环形链表 II

14、重排链表

15、对链表进行插入排序

16、排序链表

17、移除链表元素

18、回文链表

回溯法

1、解数独

2、N皇后

3、N皇后 II

4、给表达式添加运算符

二叉树

1、不同的二叉搜索树

2、不同的二叉搜索树 II

3、二叉树的中序遍历

4、从前序与中序遍历序列构造二叉树

5、验证二叉搜索树

6、恢复二叉搜索树

7、二叉树的锯齿形层次遍历

8、从中序与后序遍历序列构造二叉树

9、有序链表转换二叉搜索树

10、二叉树的最小深度

11、二叉树展开为链表

12、二叉树中的最大路径和

13、二叉树的前序遍历

14、二叉树的后序遍历

15、二叉树的右视图

16、完全二叉树的节点个数

17、二叉搜索树中第K小的元素

18、二叉搜索树的最近公共祖先

19、二叉树的最近公共祖先

20、二叉树的所有路径

21、把二叉搜索树转换为累加树

位运算

1、解码异或后的数组

前缀和

1、连续的子数组和

2、连续数组

About

前端基础,深入以及算法数据结构