Skip to content

Commit 444f01e

Browse files
author
Chu Fan
committed
docs(algorithm): 算法相关代码和文章梳理
1 parent 9e8546f commit 444f01e

File tree

10 files changed

+264
-60
lines changed

10 files changed

+264
-60
lines changed

code/algorithm/剑指/Readme.md

Lines changed: 47 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -7,55 +7,55 @@
77
88
### 数组和矩阵
99

10-
- [【简单】数组中重复的数字](./数组和矩阵/duplicate.js)
11-
- [【中等】二维数组中的查找](./数组和矩阵/Find.js)
12-
- [【较难】替换空格](./数组和矩阵/replaceSpace.js)
13-
- [【较难】顺时针打印矩阵](./数组和矩阵/printMatrix.js)
14-
- [【简单】第一个只出现一次的字符位置](./数组和矩阵/FirstNotRepeatingChar.js)
10+
- [ ] [【简单】数组中重复的数字](./数组和矩阵/duplicate.js)
11+
- [ ] [【中等】二维数组中的查找](./数组和矩阵/Find.js)
12+
- [ ] [【较难】替换空格](./数组和矩阵/replaceSpace.js)
13+
- [ ] [【较难】顺时针打印矩阵](./数组和矩阵/printMatrix.js)
14+
- [ ] [【简单】第一个只出现一次的字符位置](./数组和矩阵/FirstNotRepeatingChar.js)
1515

1616

1717
### 栈队列堆
1818

19-
- [【简单】两个栈实现队列](./栈队列堆/JSStackToQueue.js)
20-
- [【中等】最小的k个数](./栈队列堆/GetLeastNumbers_Solution.js)
21-
- [【中等】数据流中的中位数](./栈队列堆/InsertAndGetMedian.js)
22-
- [【中等】字符流中的第一个不重复的字符](./栈队列堆/FirstAppearingOnce.js)
23-
- [【较难】滑动窗口的最大值](./栈队列堆/maxInWindows.js)
24-
- [【较难】包含min函数的栈](./栈队列堆/GetMinInJSStack.js)
19+
- [ ] [【简单】两个栈实现队列](./栈队列堆/JSStackToQueue.js)
20+
- [ ] [【中等】最小的k个数](./栈队列堆/GetLeastNumbers_Solution.js)
21+
- [ ] [【中等】数据流中的中位数](./栈队列堆/InsertAndGetMedian.js)
22+
- [ ] [【中等】字符流中的第一个不重复的字符](./栈队列堆/FirstAppearingOnce.js)
23+
- [ ] [【较难】滑动窗口的最大值](./栈队列堆/maxInWindows.js)
24+
- [ ] [【较难】包含min函数的栈](./栈队列堆/GetMinInJSStack.js)
2525
- 栈的压入、弹出序列
2626

2727

2828

2929
### 双指针
3030

31-
- [【中等】和为S的两个数字](./双指针/FindNumbersWithSum.js)
32-
- [【中等】和为S的连续正数序列](./双指针/FindContinuousSequence.js)
33-
- [【中等】左旋转字符串](./双指针/LeftRotateString.js)
34-
- [【较难】翻转单词顺序列](./双指针/ReverseSentence.js)
31+
- [ ] [【中等】和为S的两个数字](./双指针/FindNumbersWithSum.js)
32+
- [ ] [【中等】和为S的连续正数序列](./双指针/FindContinuousSequence.js)
33+
- [ ] [【中等】左旋转字符串](./双指针/LeftRotateString.js)
34+
- [ ] [【较难】翻转单词顺序列](./双指针/ReverseSentence.js)
3535

3636

3737

3838
### 链表
3939

40-
- [【简单】合并两个排序的链表](./链表/Merge.js)
41-
- [【简单】两个链表的第一个公共结点](./链表/FindFirstCommonNode.js)
42-
- [【中等】链表中倒数第K个结点](./链表/FindKthToTail.js)
43-
- [【中等】反转链表](./链表/ReverseList.js)
44-
- [【较难】从尾到头打印链表](./链表/printListFromTailToHead.js)
40+
- [ ] [【简单】合并两个排序的链表](./链表/Merge.js)
41+
- [ ] [【简单】两个链表的第一个公共结点](./链表/FindFirstCommonNode.js)
42+
- [ ] [【中等】链表中倒数第K个结点](./链表/FindKthToTail.js)
43+
- [ ] [【中等】反转链表](./链表/ReverseList.js)
44+
- [ ] [【较难】从尾到头打印链表](./链表/printListFromTailToHead.js)
4545
- ~~在O(1)时间内删除链表节点~~
46-
- [【较难】删除链表中重复的结点](./链表/deleteDuplication.js)
46+
- [ ] [【较难】删除链表中重复的结点](./链表/deleteDuplication.js)
4747
- 链表中环的入口结点[暂时没思路]
4848
- 【较难】复杂链表的复制[暂时没有思路]
4949

5050

5151

5252
###
5353

54-
- [【中等】重建二叉树](./树/reConstructBinaryTree.js)
55-
- [【中等】二叉树的下一个结点](./树/GetNext.js)
56-
- [【较难】树的子结构](./树/HasSubtree.js)
57-
- [【简单】二叉树的镜像](./树/Mirror.js)
58-
- [【困难】对称的二叉树](./树/isSymmetrical.js)
54+
- [ ] [【中等】重建二叉树](./树/reConstructBinaryTree.js)
55+
- [ ] [【中等】二叉树的下一个结点](./树/GetNext.js)
56+
- [ ] [【较难】树的子结构](./树/HasSubtree.js)
57+
- [ ] [【简单】二叉树的镜像](./树/Mirror.js)
58+
- [ ] [【困难】对称的二叉树](./树/isSymmetrical.js)
5959
- 从上往下打印二叉树
6060
- 把二叉树打印成多行
6161
- 二叉搜索树的后续遍历序列
@@ -73,18 +73,18 @@
7373
#### 贪心思想
7474

7575
- 剪绳子
76-
- [【LeetCode题目】股票的最大利润](./贪心思想/maxProfit.js)
76+
- [ ] [【LeetCode题目】股票的最大利润](./贪心思想/maxProfit.js)
7777

7878

7979
#### 二分查找
8080

81-
- [【简单】旋转数组的最小数字](./二分查找/minNumberInRotateArray.js)
82-
- [【中等】数字在排序数组中出现的次数](./二分查找/GetNumberOfK.js)
81+
- [ ] [【简单】旋转数组的最小数字](./二分查找/minNumberInRotateArray.js)
82+
- [ ] [【中等】数字在排序数组中出现的次数](./二分查找/GetNumberOfK.js)
8383

8484

8585
#### 分治
8686

87-
- [【中等】数值的整数次方](./分治/Power.js)
87+
- [ ] [【中等】数值的整数次方](./分治/Power.js)
8888

8989

9090
#### 搜索
@@ -96,35 +96,35 @@
9696

9797
#### 排列
9898

99-
- [【中等】调整数组顺序使奇数位于偶数前面](./排列/reOrderArray.js)
100-
- [【较难】把数组排成最小的数](./双指针/ReverseSentence.js)
99+
- [ ] [【中等】调整数组顺序使奇数位于偶数前面](./排列/reOrderArray.js)
100+
- [ ] [【较难】把数组排成最小的数](./双指针/ReverseSentence.js)
101101
- 数组中的逆序对 困难
102102

103103
#### 动态规划
104104

105-
- [【入门】斐波拉契数列](./动态规划/Fibonacci.js)
106-
- [【简单】变态跳台阶 找规律 可跳任意阶](./动态规划/jumpFloorII.js)
107-
- [【简单】连续子数组的最大和 时间复杂度O(n)](./动态规划/FindGreatestSumOfSubArray.js)
108-
- [【简单】构建乘积数组](./动态规划/multiply.js)
109-
- [【中等】矩形覆盖](./动态规划/rectCover.js)
110-
- [【中等】跳台阶 非递归,要么跳一阶,要么跳两阶](./动态规划/jumpFloor.js)
111-
- [【较难】丑数](./动态规划/GetUglyNumber_Solution.js)
105+
- [ ] [【入门】斐波拉契数列](./动态规划/Fibonacci.js)
106+
- [ ] [【简单】变态跳台阶 找规律 可跳任意阶](./动态规划/jumpFloorII.js)
107+
- [ ] [【简单】连续子数组的最大和 时间复杂度O(n)](./动态规划/FindGreatestSumOfSubArray.js)
108+
- [ ] [【简单】构建乘积数组](./动态规划/multiply.js)
109+
- [ ] [【中等】矩形覆盖](./动态规划/rectCover.js)
110+
- [ ] [【中等】跳台阶 非递归,要么跳一阶,要么跳两阶](./动态规划/jumpFloor.js)
111+
- [ ] [【较难】丑数](./动态规划/GetUglyNumber_Solution.js)
112112

113113

114114

115115
#### 数学问题
116116

117-
- [【简单】数组中出现次数超过一半的数字](./数学/MoreThanHalfNum_Solution.js)
118-
- [【中等】圆圈中最后剩下的数 约瑟夫问题](./数学/LastRemaining_Solution.js)
119-
- [【中等】从1到n整数中1出现的次数](./数学/NumberOf1Between1AndN_Solution.js)
117+
- [ ] [【简单】数组中出现次数超过一半的数字](./数学/MoreThanHalfNum_Solution.js)
118+
- [ ] [【中等】圆圈中最后剩下的数 约瑟夫问题](./数学/LastRemaining_Solution.js)
119+
- [ ] [【中等】从1到n整数中1出现的次数](./数学/NumberOf1Between1AndN_Solution.js)
120120

121121
#### 位运算
122122

123-
- [【中等】二进制中1的个数](./位运算/NumberOf1.js)
124-
- [【中等】数组中只出现一次的数字]()
123+
- [ ] [【中等】二进制中1的个数](./位运算/NumberOf1.js)
124+
- [ ] [【中等】数组中只出现一次的数字]()
125125

126126
#### 其他分类
127127

128-
- [【简单】不用加减乘除做加法](./其他相关/Add.js)
129-
- [【中等】扑克牌顺子](./其他相关/IsContinuous.js)
130-
- [【较难】把字符串转换成整数](./其他相关/StrToInt.js)
128+
- [ ] [【简单】不用加减乘除做加法](./其他相关/Add.js)
129+
- [ ] [【中等】扑克牌顺子](./其他相关/IsContinuous.js)
130+
- [ ] [【较难】把字符串转换成整数](./其他相关/StrToInt.js)

docs/.vuepress/config.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,13 @@ export default defineUserConfig({
2222
// todo 引入代码文件时的路径替换
2323
importCode: {
2424
handleImportPath: (str) =>{
25-
return str.replace(/^@code/, path.resolve(__dirname, '../../code/'))
25+
if(str.includes('@code')){
26+
return str.replace(/^@code/, path.resolve(__dirname, '../../code/'))
27+
}
28+
if(str.includes('~@')){
29+
return str.replace(/^~@/, path.resolve(__dirname, '../../'))
30+
}
31+
return str
2632
},
2733
},
2834
},

docs/.vuepress/config/navbar-back/dev-tool.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@ export default {
4949
children: [
5050
{
5151
text: 'Eslint',
52-
link: '/eslint'
52+
link: '/develop-tool/eslint'
5353
},
5454
{
5555
text: 'Prettier',
56-
link: '/prettier'
56+
link: '/develop-tool/prettier'
5757
},
5858
]
5959
},

docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ yarn run dev
125125
## 赞赏列表
126126

127127

128-
以下排名不分先后! [详细统计]()
128+
以下排名不分先后! [ ] [详细统计]()
129129

130130

131131
<div>

docs/develop-tool/develop-tool.sidebar.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ export const developToolSidebar = [
5555
children: [
5656
{
5757
text: 'Eslint',
58-
link: '/eslint'
58+
link: '/develop-tool/eslint'
5959
},
6060
{
6161
text: 'Prettier',
62-
link: '/prettier'
62+
link: '/develop-tool/prettier'
6363
}
6464
]
6565
}

docs/develop-tool/eslint/readme.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
## Eslint
2+
3+
### 基础使用
4+
配置eslint
5+
6+
生产环境安装eslint
7+
8+
```bash
9+
## 安装eslint
10+
pnpm i eslint -D
11+
12+
```
13+
14+
执行eslint命令,根据cli进行选择配置
15+
16+
```bash
17+
18+
# 执行初始化
19+
./node_modules/.bin/eslint --init
20+
21+
```
22+
23+
会自动生成`.eslintrc.js`文件,例如:
24+
25+
26+
27+
@[code js](~@/.eslintrc.js)
28+
29+
其中`rules`对象可以自定义规则
30+
31+
相关`eslint``package.json`文件如下:
32+
33+
```package.json
34+
35+
"@typescript-eslint/eslint-plugin": "^5.53.0",
36+
"@typescript-eslint/parser": "^5.53.0",
37+
"cz-git": "^1.4.1",
38+
"eslint": "^8.34.0",
39+
"eslint-config-standard": "^17.0.0",
40+
"eslint-plugin-import": "^2.25.2",
41+
"eslint-plugin-n": "^15.0.0",
42+
"eslint-plugin-promise": "^6.0.0",
43+
"eslint-plugin-vue": "^9.9.0",
44+
"husky": "^8.0.3",
45+
"typescript": "^3.9.10",
46+
```
47+
48+
49+
### 参考资料
50+
51+
- <https://zhuanlan.zhihu.com/p/404677113>
52+

docs/front-end/base-begin/html.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
### HTML相关
33

44
HTML的全称为超文本标记语言,是一种标记语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。
5-
超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他文件,或是地理位置相距遥远的某台计算机上的文件。这种组织信息方式将分布在不同位置的信息资源用随机方式进行连接,为人们查找,检索信息提供方便 [百度百科](https://baike.baidu.com/item/HTML/97049)
5+
超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他文件,或是地理位置相距遥远的某台计算机上的文件。这种组织信息方式将分布在不同位置的信息资源用随机方式进行连接,为人们查找,检索信息提供方便 [ ] [百度百科](https://baike.baidu.com/item/HTML/97049)
66

77

88

0 commit comments

Comments
 (0)