1
0
mirror of https://github.com/142vip/408CSFamily.git synced 2026-02-03 02:23:38 +08:00

Merge pull request #29 from 142vip/next

feat: 优化ci构建流程
This commit is contained in:
mmdapl
2023-08-31 19:22:20 +08:00
committed by GitHub
63 changed files with 2734 additions and 2998 deletions

View File

@@ -1,5 +1,4 @@
node_modules
manuscript
.github
.idea
.dockerignore

View File

@@ -52,4 +52,4 @@ jobs:
run_install: true
- name: Build And Push Docker image
run: PROXY_DOMAIN=true pnpm faster-image
run: PROXY_DOMAIN=true pnpm image:faster

2
.gitignore vendored
View File

@@ -58,7 +58,6 @@ typings/
.git
.vscode
.env
.idea
.DS_Store
dist
lib
@@ -72,3 +71,4 @@ package-lock.json
templete
/docs/.vuepress/.temp/
/docs/.vuepress/.cache/
/.husky/

View File

@@ -1,15 +1,24 @@
#
# - 功能: 408CSFamily镜像构建
# - 用法: docker build -f Dockerfile --build-arg APP_VERSION=0.0.1 -t 408CSFamily-0.0.1 .
# - 用法: docker build -f Dockerfile --build-arg APP_VERSION=0.0.1 --build-arg CONTAINER_BUILD=true -t 408CSFamily-0.0.1 .
# - 参数:
# APP_VERSION: 版本
# CONTAINER_BUILD: 采用容器构建
#
# 注意vite构建需要支持node14以上安装node16较为稳妥
## 注意vite构建需要支持node14以上安装node16较为稳妥
FROM registry.cn-hangzhou.aliyuncs.com/142vip/node:16.12.0-alpine AS build_base
RUN mkdir -p /apps
ARG CONTAINER_BUILD
WORKDIR /apps
COPY . .
RUN npm i pnpm@6 -g && pnpm i -D && pnpm build
RUN echo $CONTAINER_BUILD
## 基于容器自动构建
RUN if [ "$CONTAINER_BUILD" = "true" ]; then \
npm i pnpm@7 -g && pnpm i -D && pnpm build; \
fi;
FROM registry.cn-hangzhou.aliyuncs.com/142vip/nginx:1.23.0-alpine

View File

@@ -1,13 +0,0 @@
#
# - 功能: 快速构建408CSFamily镜像
# - 用法: docker build -f Faster.Dockerfile --build-arg APP_VERSION=0.0.1 -t 408CSFamily-0.0.1 .
#
FROM registry.cn-hangzhou.aliyuncs.com/142vip/nginx:1.23.0-alpine
ARG APP_VERSION
LABEL version=$APP_VERSION description="408CSFamily合集"
LABEL author="【Github&公众号】Rong姐姐好可爱" email="fairy_408@2925.com"
COPY ./docs/.vuepress/dist/ /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/

407
README.md
View File

@@ -1,13 +1,39 @@
## 写最前面
> `408CSFamily` 我的理解是408计算机专业课”全家桶“而408相信考研er都知道计算机考研专业课代码在最新的高校计算机研究生招考中已经越来越多的学校改考408。可见408所涉及到的专业课举足轻重的地位不论是在考研或者找工作我相信408的专业基础必定是难以避免的所以话不多说、形势复杂唯一能做的就是不停的学习、巩固基础知识加油
>
> 另外本仓库收录的大部分内容将来源我自己的学习输出和相关资料的整理将会站在上班族的角度进行分类、输出若有任何疑惑和问题欢迎在github仓库集中pr或issues提出
<div align="center">
<p>
<img alt="408Logo图片" width="240" src="https://cdn.staticaly.com/gh/142vip/cdn_service@main/doc_book/408/408_logo.png" style="text-align: center;">
</p>
<p style="font-size: 30px"><strong>✨计算机应试全家桶✨</strong></p>
</div>
<div align="center">
<div id="">
<a href="https://github.com/mmdapl" target="_blank">
<img alt="作者: 储凡" src="https://img.shields.io/badge/Author-Chu·Fan-8A2BE2.svg?style=for-the-badge" style="text-align: center;">
</a>
</div>
<div>
<a href="https://app.netlify.com/sites/408-family/deploys" target="_blank" style="padding: 5px">
<img alt="Netlify" src="https://api.netlify.com/api/v1/badges/75a7251a-f873-4aff-b387-6449ca241ef7/deploy-status">
</a>
<a href="" target="_blank" style="padding: 5px">
<img alt="Vercel" src="https://therealsujitk-vercel-badge.vercel.app/?app=408">
</a>
</div>
<div>
<img alt="code size" src="https://img.shields.io/github/languages/code-size/142vip/408CSFamily" style="padding: 5px">
<img alt="tag version" src="https://img.shields.io/github/v/tag/142vip/408CSFamily" style="padding: 5px">
<img alt="release version" src="https://img.shields.io/github/v/release/142vip/408CSFamily" style="padding: 5px">
<img alt="repo size" src="https://img.shields.io/github/repo-size/142vip/408CSFamily" style="padding: 5px">
</div>
</div>
**阅读之前必看:**
1. 长期更新、维护
2. 建议结合思维导图进行学习
### 在线浏览
@@ -15,7 +41,7 @@
- 稳定版: <https://408.142vip.cn>
网站无法访问时,建议通过科学上网访问备用网络
> 网站无法访问时,建议通过科学上网访问备用网络
- Github <https://142vip.github.io/408CSFamily>
- Netlify <https://408-family.netlify.app>
@@ -23,12 +49,26 @@
## 写最前面
`408CSFamily` 我的理解是408计算机专业课”全家桶“而408相信考研er都知道计算机考研专业课代码在最新的高校计算机研究生招考中已经越来越多的学校改考408。可见408所涉及到的专业课举足轻重的地位不论是在考研或者找工作我相信408的专业基础必定是难以避免的所以话不多说、形势复杂唯一能做的就是不停的学习、巩固基础知识加油
本仓库收录的大部分内容将来源我自己的学习输出和相关资料的整理将会站在上班族的角度进行分类、输出若有任何疑惑和问题欢迎在github仓库集中pr或issues提出
**阅读之前必看:**
1. 长期更新、维护
2. 建议结合思维导图进行学习
### 思维导图【MD文档版本】
> 主要是关键知识,更新优化中...
- [数据结构](./数据结构/数据结构和算法.md)
- [数据结构](./manuscripts/数据结构/数据结构和算法.md)
- 计算机组成原理TBD
- 操作系统TBD
- 计算机网络TBD
@@ -52,7 +92,10 @@
## 学习视频
不是王道工作人员,不做任何推销,只是感觉看书不太行的话还是得找找视频辅助下,就发现了王道视频唯一要推销的可能是我的B站ID**[Rong姐姐好可爱](https://space.bilibili.com/350937042)**,哈哈哈哈啊哈噗呲
> 不是王道工作人员,不做任何推销,只是感觉看书不太行的话还是得找找视频辅助下,就发现了王道视频
> 唯一要推销的可能是我的B站**[Rong姐姐好可爱](https://space.bilibili.com/350937042)**
>
> 补充视频都是王道官方的我自己有时也会用这个如果链接失效可以去B站搜搜哈
@@ -62,11 +105,11 @@
- [操作系统](https://www.bilibili.com/video/BV1YE411D7nH)
- [计算机网络](https://www.bilibili.com/video/BV19E411D78Q)
> 补充视频都是王道官方的我自己有时也会用这个如果链接失效可以去B站搜搜哈
## 大纲目录善用Ctrl+F
> 注意:没有链接的,可以在仓库找找,只是选择性进行博客和公众号发表
**注意:没有链接的,可以在仓库找找,只是选择性进行博客和公众号发表**
### 数据结构
@@ -77,13 +120,13 @@
> 3. 《数据结构与算法景点问题解析》 第二版 Narasimha Karumanchi著.
> 4. 《计算机网络-王道考研》 2019 王道论坛著.
#### [基础入门](/数据结构/基础入门/Readme.md)
#### [基础入门](./manuscripts/数据结构/基础入门/readme.md)
- [基础概念](https://mp.weixin.qq.com/s/M8MOCVnbVxQ3GRuxRaEKIg)
- [数据结构三要素](https://mp.weixin.qq.com/s/7sCoHDFtI-Qp0wBcvMH6kQ)
- [算法与算法评价](https://mp.weixin.qq.com/s/58fBAwoyg2Ali-HqOJ6t9g)
#### [线性表](/数据结构/线性表/Readme.md)
#### [线性表](./manuscripts/数据结构/线性表/readme.md)
- [基础概念和基本操作](https://mp.weixin.qq.com/s/3e5LX9HbnjfT980zV3veXA)
- [线性表的顺序表示](https://mp.weixin.qq.com/s/gaXmF3tqZxxFXhhDyPZv-A)
@@ -147,144 +190,6 @@
- 外部排序方法整理
### 算法刷题
> 刷题部分来源于自己在牛客网的刷题练习编程语言大部分采用的是javascript
#### [剑指真题](https://www.nowcoder.com/ta/coding-interviews)
### 数组和矩阵
- [【简单】数组中重复的数字](./算法/剑指/数组和矩阵/duplicate.js)
- [【中等】二维数组中的查找](./算法/剑指/数组和矩阵/Find.js)
- [【较难】替换空格](./算法/剑指/数组和矩阵/replaceSpace.js)
- [【较难】顺时针打印矩阵](./算法/剑指/数组和矩阵/printMatrix.js)
- [【简单】第一个只出现一次的字符位置](./算法/剑指/数组和矩阵/FirstNotRepeatingChar.js)
### 栈队列堆
- [【简单】两个栈实现队列](./算法/剑指/栈队列堆/JSStackToQueue.js)
- [【中等】最小的k个数](./算法/剑指/栈队列堆/GetLeastNumbers_Solution.js)
- [【中等】数据流中的中位数](./算法/剑指/栈队列堆/InsertAndGetMedian.js)
- [【中等】字符流中的第一个不重复的字符](./算法/剑指/栈队列堆/FirstAppearingOnce.js)
- [【较难】滑动窗口的最大值](./算法/剑指/栈队列堆/maxInWindows.js)
- [【较难】包含min函数的栈](./算法/剑指/栈队列堆/GetMinInJSStack.js)
- ~~栈的压入、弹出序列~~
### 双指针
- [【中等】和为S的两个数字](./算法/剑指/双指针/FindNumbersWithSum.js)
- [【中等】和为S的连续正数序列](./算法/剑指/双指针/FindContinuousSequence.js)
- [【中等】左旋转字符串](./算法/剑指/双指针/LeftRotateString.js)
- [【较难】翻转单词顺序列](./算法/剑指/双指针/ReverseSentence.js)
### 链表
- [【简单】合并两个排序的链表](./算法/剑指/链表/Merge.js)
- [【简单】两个链表的第一个公共结点](./算法/剑指/链表/FindFirstCommonNode.js)
- [【中等】链表中倒数第K个结点](./算法/剑指/链表/FindKthToTail.js)
- [【中等】反转链表](./算法/剑指/链表/ReverseList.js)
- [【较难】从尾到头打印链表](./算法/剑指/链表/printListFromTailToHead.js)
- ~~在O(1)时间内删除链表节点~~
- [【较难】删除链表中重复的结点](./算法/剑指/链表/deleteDuplication.js)
- ~~链表中环的入口结点[暂时没思路]~~
- ~~【较难】复杂链表的复制[暂时没有思路]~~
### 树
- [【中等】重建二叉树](./算法/剑指/树/reConstructBinaryTree.js)
- [【中等】二叉树的下一个结点](./算法/剑指/树/GetNext.js)
- [【较难】树的子结构](./算法/剑指/树/HasSubtree.js)
- 二叉树的镜像
- 对称的二叉树
- 从上往下打印二叉树
- 把二叉树打印成多行
- 二叉搜索树的后续遍历序列
- 二叉树中和为某一值的路劲
- 二叉搜索树和双向链表
- 序列化二叉树
- 二叉查找树的第K个结点
- 二叉树的深度
- 平衡二叉树
- 树中两个节点的最低公共祖先
### 综合类型
#### 贪心思想
- 剪绳子
- [【LeetCode题目】股票的最大利润](./算法/剑指/贪心思想/maxProfit.js)
#### 二分查找
- [【简单】旋转数组的最小数字](./算法/剑指/二分查找/minNumberInRotateArray.js)
- [【中等】数字在排序数组中出现的次数](./算法/剑指/二分查找/GetNumberOfK.js)
#### 分治
- [【中等】数值的整数次方](./分治/Power.js)
#### 搜索
- 矩阵中的路径 有难度
- 机器人的运动范围
- 字符串的排列
#### 排列
- [【中等】调整数组顺序使奇数位于偶数前面](./算法/剑指/排列/reOrderArray.js)
- [【较难】把数组排成最小的数](./算法/剑指/双指针/ReverseSentence.js)
- 数组中的逆序对 困难
#### 动态规划
- [【入门】斐波拉契数列](./算法/剑指/动态规划/Fibonacci.js)
- [【简单】变态跳台阶 找规律 可跳任意阶](./算法/剑指/动态规划/jumpFloorII.js)
- [【简单】连续子数组的最大和 时间复杂度O(n)](./算法/剑指/动态规划/FindGreatestSumOfSubArray.js)
- [【简单】构建乘积数组](./算法/剑指/动态规划/multiply.js)
- [【中等】矩形覆盖](./算法/剑指/动态规划/rectCover.js)
- [【中等】跳台阶 非递归,要么跳一阶,要么跳两阶](./算法/剑指/动态规划/jumpFloor.js)
- [【较难】丑数](./算法/剑指/动态规划/GetUglyNumber_Solution.js)
#### 数学问题
- [【简单】数组中出现次数超过一半的数字](./算法/剑指/数学/MoreThanHalfNum_Solution.js)
- [【中等】圆圈中最后剩下的数 约瑟夫问题](./算法/剑指/数学/LastRemaining_Solution.js)
- [【中等】从1到n整数中1出现的次数](./算法/剑指/数学/NumberOf1Between1AndN_Solution.js)
#### 位运算
- [【中等】二进制中1的个数](./算法/剑指/位运算/NumberOf1.js)
- [【中等】数组中只出现一次的数字](./算法/剑指/位运算/FindNumsAppearOnce.js)
#### 其他分类
- [【简单】不用加减乘除做加法](./算法/剑指/其他相关/Add.js)
- [【中等】扑克牌顺子](./算法/剑指/其他相关/IsContinuous.js)
- [【较难】把字符串转换成整数](./算法/剑指/其他相关/StrToInt.js)
#### [前端常考](https://www.nowcoder.com/activity/oj?tab=3)
#### [后端常考](https://www.nowcoder.com/activity/oj?tab=0)
### 计算机网络
@@ -326,20 +231,18 @@
#### I/O管理
<!-- - [第一章:操作系统引论](计算机操作系统/第一章)
- [第二章:进程的描述与控制](计算机操作系统/第二章)
- [第三章:处理机调度与死锁](计算机操作系统/第三章)
- [第四章:存储器管理](计算机操作系统/第四章)
- [第五章:虚拟存储器](计算机操作系统/第一章)
- [第六章:虚拟存储器](计算机操作系统/第一章)
- [第七章:文件管理](计算机操作系统/第一章)
- [第八章:磁盘存储器的管理](计算机操作系统/第一章)
- [第九章:操作系统接口](计算机操作系统/第一章)
- [第十章:多处理机操作系统](计算机操作系统/第一章)
- [第十一章:多媒体操作系统](计算机操作系统/第一章)
- [第十二章:保护与安全](计算机操作系统/第一章) -->
- 第一章:操作系统引论
- 第二章:进程的描述与控制
- 第三章:处理机调度与死锁
- 第四章:存储器管理
- 第五章:虚拟存储器
- 第六章:虚拟存储器
- 第七章:文件管理
- 第八章:磁盘存储器的管理
- 第九章:操作系统接口
- 第十章:多处理机操作系统
- 第十一章:多媒体操作系统
- 第十章:保护与安全
@@ -370,167 +273,17 @@
<!-- ##
## 字节工作内推
**帮朋友转发、宣传,以下jd是相对社招而言校招、实习会降低要求社招、校招、实习机会多多更有漂亮hr小姐姐引导整个流程不论是在校学生还是已步入职场的你只要有兴趣觉得合适的给我简历安排内推欢迎简历骚扰备注来意即可mmdapl@163.com**
#### 资深前端开发工程师 - 抖音电商
##### 职位描述
- 负责字节跳动电商C端业务产品抖音、西瓜、头条、番茄小说、皮皮虾等应用的工程架构设计、业务开发、跨端架构设计覆盖Web应用、多端组件库、C端搭建等多个方向
- 参与团队前端工程化体系建设,逐步提升研发效率、研发质量,通过前端技术的不断产出驱动业务的发展;
- 与产品经理、设计师、后端工程师一起,提升产品的用户体验,打造卓越的互联网产品;
- 关注前端前沿技术发展,能够将新知识传递给团队,并且转化到潜在项目中。
##### 职位要求
- 扎实的计算机基础知识,熟悉常用的数据结构、算法和设计模式,并能在日常研发中灵活使用;
- 深入理解Web前端开发技术包括HTML/CSS/JavaScript等
- 掌握至少一种主流前端框架包括React/vue等有实际项目研发经验
- 了解React Native、OC、小程序、跨端开发等有一定的实际开发经验;
- 深入跨端、浏览器、运行时容器等任一方向即可,对于运行时容器、渲染引擎等方面有一定的技术认知;。
- 熟悉交互设计理论,能够将优秀的交互设计落地到产品中,能够独立完成一个复杂模块或项目的研发工作;
- 具备较强的责任感、团队合作精神、逻辑思维能力和表达能力。
#### 高级前端研发工程师-抖音短视频
##### 职位描述
- 负责抖音相关产品功能开发,包括用户产品端功能、大型活动、小程序等的开发;
- 负责抖音相关中台、业务平台、ToB产品的全栈技术方案设计、开发
- 负责基础框架、工具链、组件库等基础设施设计、开发和维护;
- 在跨端及全栈、音视频等技术方向进行核心难题攻坚;
- 基于跨端和全栈技术探索高效开发迭代模式。
##### 职位要求
- 本科及以上学历,扎实的计算机基础和前端基础;
- 熟练掌握React/Vue等大型前端框架理解底层原理能够灵活运用
- 了解跨客户端/全栈 其中的一种技术体系,理解相关底层原理;
- 熟悉前端工程化相关及原理,具备良好的架构设计和工程设计能力;
- 有全栈实践,熟悉 Node/Python/Go 加分;
- 有跨端开发经验React Native/Weex/Flutter加分
- 有Web游戏开发或引擎开发音视频相关实践经验加分。
#### 高级前端研发工程师 - 翻译平台
##### 职位描述
- 负责国际化文案管理及翻译平台的迭代,促进公司内外部各产品的国际化发展;
- 负责国际化多语言工具链建设,提升国际化开发、翻译的效率。
##### 职位要求
- 本科及以上学历2 年及以上工作经验,计算机相关专业优先;
- 熟悉React、Redux/Mobx技术栈以及Webpack等打包构建工具具备较强的项目架构能力
- 对设计原理有一定研究,有良好的代码设计意识;
- 熟悉至少一门后端编程语言NodeJS、Golang、Python等并有实践经验
- 有国际化产品背景加分;
- 有i18n相关方案开发或者维护经验的加分。
#### 高级前端开发工程师 - 中后台方向
##### 职位描述
- 参与IES企业级设计体系『Semi Design』开发及维护包括UI组件库、主题平台、物料平台等
- 参与IES中后台设计开发工具链开发及维护包括主题/物料开发工具、Sketch/Figma插件、IDE插件等
- 参与IES中后台基础库、解决方案开发及维护包括i18n、权限、路由等方案
- 参与前沿设计智能的研究。
##### 职位要求
- 三年以上前端相关工作经验,计算机及相关专业;
- 对React相关技术栈有深入研究了解Vue相关技术栈
- 熟悉Webpack等打包构建工具
- 有丰富的中后台开发经验具备一定的服务端开发基础熟悉Koa/Express开发熟悉运维部署。
#### 高级前端研发工程师-抖音用户增长-激励体系方向
##### 职位描述
- 负责抖音端内金币激励产品迭代;
- 负责抖音端内增长游戏产品迭代。
##### 职位要求
- 本科及以上学历计算机基础扎实熟练掌握Javascript/CSS
- 掌握当前流行的前端框架如React/Vue并熟悉其衍生生态如Redux、Webpack等
- 有跨端开发经验有RN/Weex/小程序/Flutter等项目经验
- 对小游戏玩法有强烈兴趣,对游戏引擎有一定认知,如 Cocos2dLayaboxEgret 等。
#### 前端开发工程师-直播方向
##### 职位描述
- 负责抖音/抖音火山版/西瓜视频/今日头条等产品直播研发webapp/hybrid/React Native/小程序/Electron/多媒体,以及大型中后台大前端研发;
- 追求极致,不停探索前端跨平台技术。
##### 职位要求
- 计算机基础扎实熟练掌握JavascriptES5/6CSS熟练掌握各种布局
- 对解决 CSS/JS 多浏览器兼容性问题,前端性能优化有一定的经验;
- 理解工程化思想,对构建和持续集成有一定认识,熟悉一种构建工具;
- 理解组件化开发思想有一定的设计能力熟悉最少一种前端MV*框架;
- 对后端技术和数据库有一定了解;
- 有移动端web开发经验HybridReact Native等优先
- 对大型网站重构有丰富经验者优先,有成功作品者优先;
- 对动画渲染引擎有经验者优先。
#### 前端开发工程师-支付
##### 团队介绍
依托字节跳动强大的业务中台和技术中台能力,快速探索互联网全新的业务形态,寻找全新的用户需求,创造全新的业务场景,服务数亿用户。
##### 职位描述
- 自我驱动完成核心业务系统的前端研发工作;
- 优化前端体验,解决性能和交互难点;
- 参与前端工具链、通用服务、基础库、设计语言建设。
##### 职位要求
- 本科及以上学历,计算机相关专业优先;
- 理解并熟练掌握 HTML(5)、CSS(3)、JS拥有成熟应用经验
- 熟练前端生态并怀有兴趣和好奇心,至少熟悉一种主流框架;
- 学习能力强,对产品有强烈的责任感,拥有沟通和团队协作能力,适应自驱工作环境 。
#### 前端研发工程师-智能营销中台
##### 职位描述
- 负责设计稿智能解析生成UI界面平台开发
- 负责智能设计辅助平台开发;
- 负责公司运营活动平台建设。
##### 职位要求
- 计算机、通信和电子信息科学相关专业优先;
- 有图像算法、深度学习背景优先;
- 熟悉前端相关技术包括HTML、CSS、JavaScript等
- 有自己的技术产品、开源作品、或活跃的开源社区贡献者优先;
- 积极乐观、责任心强、工作认真细致、具有良好的服务意识、具有良好的沟通协作能力。
#### 前端开发工程师-社区安全方向
##### 职位描述
- 负责抖音端内社区安全和隐私合规相关功能的前端开发工作;
- 负责抖音社区安全、隐私合规方向的平台建设工作。
##### 职位要求
- 计算机基础扎实,熟悉常用的数据结构和算法,具备扎实的编码能力;
- 前端基础扎实熟练掌握HTML、Javascript、CSS及HTTP协议
- 熟悉至少一种Web开发框架如React、Vue、Angular等
- 具备良好的系统设计能力,能自主完成常规技术方案的设计及落地;
- 具有良好的团队合作精神和积极主动的沟通意识;
- 有安全相关工作背景者优先,有大型网站架构经验者优先,具备全栈/跨端开发能力者优先。 -->
## 赞赏列表
以下排名不分先后! [传送门→]() **赞赏过的一定要微信跟我说呀!!!!!!**
<div>
<a href="https://github.com/ChiefPing" target="_blank" style="margin: 5px">
<img src="https://avatars2.githubusercontent.com/u/34122068?s=460&v=4" width="50px" style="brder-radius:5px;"/>
<img alt="ChiefPing" src="https://avatars2.githubusercontent.com/u/34122068?s=460&v=4" width="50px" style="brder-radius:5px;"/>
</a>
<a href="https://github.com/xiaoliuxin" target="_blank" style="margin: 5px">
<img src="https://avatars2.githubusercontent.com/u/60652527?s=460&v=4" style="border-radius:5px;" width="50px"/>
<img alt="xiaoliuxin" src="https://avatars2.githubusercontent.com/u/60652527?s=460&v=4" style="border-radius:5px;" width="50px"/>
</a>
</div>
@@ -543,6 +296,20 @@
## 贡献
感谢向仓库提交mr的所有开发者
[![contributors](https://contrib.rocks/image?repo=142vip/408CSFamily)](https://github.com/142vip/408CSFamily/graphs/contributors)
## 趋势
<div style="text-align: center" align="center">
<img alt="Star History" src="https://api.star-history.com/svg?repos=142vip/408CSFamily&type=Date" >
</div>
## 联系作者
若系列文章对你有所帮助,欢迎订阅公众号或微信”骚扰“,获取更多内容。**商务合作请备注来意**
@@ -617,7 +384,3 @@

View File

@@ -1,43 +1,35 @@
/*
* @Description: 折半插入算法【伪代码】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-04-15 18:27:59
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-27 12:19:13
*/
// 折半查找
void BinaryInsertSort(ElemType Arr[],int n){
int i,j,lowIndex,heightIndex,midIndex;
int i,j,lowIndex,highIndex,midIndex;
for(i=2;j<=n;i++){
// 将待排序的元素暂存在Arr[0]上
Arr[0]=Arr[i];
lowIndex=1; // 左侧子表 折半查找起始位置
heightIndex=i-1; // 左侧子表 折半查找结束位置
while(lowIndex<=heightIndex){
highIndex=i-1; // 左侧子表 折半查找结束位置
while(lowIndex<=highIndex){
// 左侧有序子表的中间位置角标
midIndex=(lowIndex+heightIndex)/2;
if(Arr[midIndex].key>Arr[0].key){
// 小于中间元素,插入位置在子表左侧
heightIndex=mid-1
highIndex=mid-1
}else{
// 大于或者等于中间元素,插入位置在子表右侧
lowIndex=midIndex+1;
}
}
// 跳出循环需要lowIndex>heightIndex说明待插入位置的角标在heightIndex之后为 heightIndex+1,此时需要将heightIndexi之间的所有元素后移
// 跳出循环需要lowIndex>heightIndex
// 说明待插入位置的角标在heightIndex之后为 heightIndex+1,此时需要将heightIndexi之间的所有元素后移
for(j=i-1;j>heightIndex;--j){
for(j=i-1;j>highIndex;--j){
Arr[j+1]=Arr[j]
}
// 后移完成后将元素Arr[0]赋值到位置hightIndex+1
Arr[heightIndex+1]=Arr[0]
// 后移完成后将元素Arr[0]赋值到位置highIndex+1
Arr[highIndex+1]=Arr[0]
}
}

View File

@@ -1,21 +1,11 @@
/*
* @Description: 折半插入排序【JavaScript版本】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-27 12:35:17
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-27 12:50:00
*/
/**
* 折半插入排序
* @param arr
* @param len
* 折半插入排序【JavaScript版本】
*/
function binaryInsertSort(arr, len) {
// 数组长度校验【非必须】
len = arr.length === len ? len : arr.length
len = arr.length === len
? len
: arr.length
for (let i = 1; i < len; i++) {
const temp = arr[i]
@@ -23,7 +13,7 @@ function binaryInsertSort(arr, len) {
while (lowIndex <= highIndex) {
// 注意:取整,javascript这里取整会出现空指针
const mid = parseInt((lowIndex + highIndex) / 2)
const mid = Math.ceil((lowIndex + highIndex) / 2)
if (arr[mid] <= temp) {
// 右侧
@@ -34,7 +24,6 @@ function binaryInsertSort(arr, len) {
}
}
// 元素后移
for (let j = i - 1; j > highIndex; --j) {
arr[j + 1] = arr[j]
}

View File

@@ -1,24 +1,11 @@
/*
* @Description: 冒泡排序
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-31 08:24:18
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-04-06 07:26:15
*/
// 冒泡排序
void BubbleSwapSort(ElemType A[], int n){
for(i=0;i<n-1;i++){
// 当前趟次冒泡是否发生了元素交换初始化为false
bool flag=false;
for(j=n-1;j>i;j--){
if(A[j-1].key>A[j].key){
// 将两个元素A[j-1]、A[j]进行交换,有多种方法
swap(A[j-1],A[j])
// 确认已发生交换
@@ -35,7 +22,6 @@ void BubbleSwapSort(ElemType A[], int n){
/**
* 加减法实现两个元素值互换
*
*/
void swap(int a, int b){
// 此时a为两值的和
@@ -46,10 +32,8 @@ void swap(int a, int b){
a=a-b;
}
/**
* 临时变量实现两个元素值的互换
*
*/
// 临时变量实现两个元素值的互换
void swap(int a,int b){
int temp;
temp=a;

View File

@@ -1,13 +1,6 @@
/*
* @Description: 冒泡排序【JavaScript版本】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-04-06 07:26:59
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-04-06 08:01:19
/**
* 冒泡排序【JavaScript版本】
*/
function BubbleSort(arr, len) {
// 校正数组的长度
len = arr.length === len ? len : arr.length
@@ -38,20 +31,6 @@ function BubbleSort(arr, len) {
return arr
}
/**
* 加减法交换元素的值
* 注意JavaScript中使用需要考虑到作用域的问题
* @param a
* @param b
*/
function swap(a, b) {
a = a + b
b = a - b
a = a - b
}
const initArr = [1, 5, 8, 3, 2, 9, 16]
console.log(`冒泡排序前:${initArr}`)
const sortedArr = BubbleSort(initArr, 7)

View File

@@ -1,110 +1,78 @@
/*
* @Description: 单链表
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-04 23:38:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-05 21:30:58
*/
/*
* @Description: 单链表头插法
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-04 23:38:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2020-03-04 23:39:16
*/
// 单链表头插法
LinkList CreateListWithStartNode(LinkList &L){
LNode *s;
int x;
L=(LinkList)malloc(sizeof(LNode)); // 创建头结点L
L->next=NULL; // 初始化空链表
// 控制台输入值
scanf("%d",&x);
// 输入9999 表示结束
while(x!==9999){
// 开辟新结点存储空间
s=(LNode*)malloc(sizeof(LNode));
s=(LNode*)malloc(sizeof(LNode));
// 结点数据域赋值
s->data=x;
s->data=x;
// 修改指针新结点插入表中【注意L->next为头结点的指针域】
s->next=L->next;
L->next=s;
scanf("%d",&x);
}
// 返回单链表
return L;
}
/*
* @Description: 单链表尾插法
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-04 23:38:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2020-03-04 23:39:16
*/
// 单链表尾插法
LinkList CreateListWithEndNode(LinkList &L){
int x; // 输入结点值
L=(LinkList)malloc(sizeof(LNode));
LNode *s; // 新结点s
LNode *r=L; // r为尾指针
// 控制台输入值
scanf("%d",&x);
while(x!==9999){
// 开辟新结点存储空间
s=(LNode *)malloc(sizeof(LNode));
// 新结点s的数据域赋值为x
s->data=x;
// 单链表L的尾指针指向新的结点s
r->next=s;
// 指针r指向新的表尾结点
r=s;
scanf("%d",&x);
}
// 表尾指针置空【重要】
r->next=NULL;
// 返回单链表
return L;
}
/*
* @Description: 单链表按序号查找
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-04 23:38:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2020-03-04 23:39:16
*/
// 单链表按序号查找
LNode *GetElem(LinkList L,int i){
int j=1; // 查询计数初始为1
LNode *p=L->next; // 单链表头结点指针赋值给指针p
// 第0个元素则指向头结点返回头结点
if(i==0){
// 头结点包含数据域和指针域
return L;
}
// 不等于0却小于1则i为负数无效直接返回NULL查询结果空
if(i<1){
return NULL;
@@ -112,7 +80,7 @@ LNode *GetElem(LinkList L,int i){
// p存在且计数没有走到初始i的位置
while(p&&j<i){
// 指针后移
p=p->next;
@@ -125,19 +93,12 @@ LNode *GetElem(LinkList L,int i){
// 跳出循环返回第i个结点的指针
return p;
}
/*
* @Description: 单链表按值查找
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-04 23:38:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2020-03-04 23:39:16
*/
//单链表按值查找
LNode *LocateElem(LinkList L,ElemType e){
// 指针【哨兵】
LNode *p=L->next;
// 从第1个结点开始查找数据域(data)为e的结点
@@ -145,11 +106,11 @@ LNode *LocateElem(LinkList L,ElemType e){
// 无法匹配,指针后移
p=p->next;
}
// 注意p为NULL的时候说明单链表已经遍历的尾结点了跳出循环没有找到目标结点
// 查找到第1个匹配的结点跳出循环返回结点指针
return p;
//
//
}

View File

@@ -1,12 +1,3 @@
/*
* @Description: 链栈的相关操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-01-15 9:19:56
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-13 12:27:36
*/
// 链栈类型定义【基础】
typedef struct LinkNode{
ElemType data; // 栈元素结点数据域
@@ -15,28 +6,21 @@ typedef struct LinkNode{
// 更为详细的定义
typedef struct StackNode
typedef struct StackNode
{
int data;//结点数据域
struct StackNode* next;//结点指针域
}StackNode,* Linktop;
//链栈的数据结构
typedef struct LinkStack
typedef struct LinkStack
{
Linktop top; //栈顶结点,定义了一个指向上个结构体的指针
int count;//元素个数
}LinkStack;
/*
* @Description: 基于单链表链栈的进栈操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-04 07:36:04
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2020-03-04 11:39:16
*/
// 基于单链表链栈的进栈操作
bool linkStackPushNode(LinkStack* linkStack,int e){
// 判断链栈是否存在
@@ -47,20 +31,18 @@ bool linkStackPushNode(LinkStack* linkStack,int e){
// 开辟栈结点元素内存控件
StackNode* node = (StackNode*)malloc(sizeof(StackNode));
// 新结点指针域指向链表,即栈顶指针位置,元素加入链表
node->next = linkStack->top;
node->next = linkStack->top;
// 新结点数据域赋值
node->data = e;
// 元素进栈,移动栈顶指针,指向新入栈的元素
linkStack->top = node;
// 链栈元素总数+1
linkStack->top = node;
// 链栈元素总数+1
linkStack->count++;
//链栈入栈成功返回true
return true;
}
/*
* @Description: 基于单链表链栈的出栈操作
* @Version: Beta1.0
@@ -81,10 +63,10 @@ bool linkStackPopNode(LinkStack* linkStack,int *e){
// 结点元素数据域赋值给变量e
*e = linkStack->data;
// 移动栈顶指向,栈顶指针指向待出栈结点的后继结点
linkStack->top = node->next;
linkStack->top = node->next;
// 变量e已被赋值释放链栈出栈元素的内存控件
free(node);
// 链栈元素个数-1
free(node);
// 链栈元素个数-1
linkStack->count--;
// 出栈成功返回true.
return true;

View File

@@ -1,14 +1,3 @@
/*
* @Description: 循环队列操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2019-09-27 14:17:28
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-18 23:52:10
*/
// 队列最大存储元素个数
#define MaxSize 50

View File

@@ -1,15 +1,5 @@
/*
* @Description: 快速排序【伪代码】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-23 08:23:20
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-04-08 21:51:28
*/
// 快速排序【伪代码】
void QuickSort(ElemType A[] , int low , int high){
// low > high 表角标越界low=high 子表只有一个元素,不需要进行快排,已经有序
if(low<high){
@@ -23,9 +13,7 @@ void QuickSort(ElemType A[] , int low , int high){
QuickSort(A,pivotKey+1,high)
}
return A
}
int Partition(ElemType A ,int low , int high){
@@ -36,7 +24,7 @@ int Partition(ElemType A ,int low , int high){
while(low<high && A[high]>=pivot) --high
A[low]=A[high] // 比pivot小的都移到左表 注意--high 从后往前遍历
while(low<high && A[low]<=pivot ) ++low
while(low<high && A[low]<=pivot ) ++low
A[high]=A[low] // 比pivot大的都移到右表注意++low 从前往后遍历
}

View File

@@ -1,19 +1,9 @@
/*
* @Description: 快速排序【JavaScript版本】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-04-08 08:20:35
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-04-08 21:50:12
*/
/**
* 基于分治法思想,将数组进行快速排序
* @param {Array} arr 待排序的数组
* @param {int} low 数组低位角标 左指针
* @param {int} high 数组高位角标 右指针
* @returns
*/
function QuickSort(arr, low, high) {
// low=high 说明只有一个元素,理解为有序,不做处理
@@ -37,7 +27,6 @@ function QuickSort(arr, low, high) {
* @param {Array} arr 分治思想处理后的数组
* @param {int} low 数组低位角标 左指针
* @param {int} high 数组高位角标 右指针
* @returns
*/
function Partition(arr, low, high) {
// 假设低位指针对应数组角标元素为基准pivot

View File

@@ -1,12 +1,5 @@
/*
* @Description: 希尔排序【伪代码】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-04-13 13:05:22
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-27 17:03:41
*/
// 希尔排序【伪代码】
void ShellSort(ElemType Arr[] , int n){
// k是增量
for(k=n/2;k>=1;k=k/2){

View File

@@ -1,19 +1,10 @@
/*
* @Description: 希尔排序
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-02-21 08:07:13
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-28 11:37:29
*/
/**
*
* 数组的希尔排序
* - 返回已排序的数组,从小到大
* @param {Array} arr 待排序数组
* @param {int} len 数组长度,可校验
* @returns 返回已排序的数组,从小到大
* @returns
*/
function shellSort(arr, len) {
// 校对数组长度
@@ -60,37 +51,6 @@ function specialStraightInsertSort(arr, len, increment, groupIndex) {
}
/**
* 插入排序
* @param{Array} arr 待排序的数组
* @param{int} len 数组arr的长度可以用arr.length()计算得到
*/
function straightInsertSort(arr, len) {
// 重新确定数组长度
len = arr.length === len ? len : arr.length
// 从第二个元素开始循环共len-1次
for (let i = 1; i < len; i++) {
// 后面的额元素比前面的元素小,需要把前面大于哨兵元素有序序列,移动后面一位
if (arr[i] < arr[i - 1]) {
let j
// 哨兵元素
const temp = arr[i]
for (j = i - 1; arr[j] > temp; --j) {
// 后移
arr[j + 1] = arr[j]
}
// 跳出循环逻辑出现arr[j] > arr[j-1]
// 哨兵即待排序的
arr[j + 1] = temp
}
}
return arr
}
const dealArr = [5, 8, 2, 16, 3, 9, 1]
console.log('插入排序前:', dealArr)
const sortResult = shellSort(dealArr, 7)
@@ -99,8 +59,8 @@ console.log('插入排序后:', sortResult)
/**
* 简化的希尔排序
* - 返回已排序号的数组,从小到大
* @param {Array} arr
* @returns 返回已排序号的数组,从小到大
*/
function shellSortBetter(arr) {
const len = arr.length
@@ -108,10 +68,10 @@ function shellSortBetter(arr) {
while (increment !== 0) {
for (let i = increment; i < len; i++) {
const temp = arr[i]
for (var j = i - increment; j >= 0 && temp < arr[j]; j -= increment) {
for (let j = i - increment; j >= 0 && temp < arr[j]; j -= increment) {
arr[j + increment] = arr[j]
}
arr[j + increment] = temp
arr[i + increment] = temp
}
increment = Math.floor(increment / 2)
}

View File

@@ -1,13 +1,5 @@
/*
* @Description: 顺序表的基础操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-02-23 07:48:26
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-02-23 07:48:26
*/
// 顺序表的基础操作
// 基础结构体
@@ -60,7 +52,7 @@ bool ListDelete(SqList &L, int i, ElemType &e){
if(L.length >= MaxSize){
return false;
}
// 引用变量e赋值
e=L.data[i-1]
@@ -70,7 +62,7 @@ bool ListDelete(SqList &L, int i, ElemType &e){
L.data[j-1]=L.data[j];
}
// 此时表L中的表尾元素和倒数第二个元素值一样将表的长度-1
// 此时表L中的表尾元素和倒数第二个元素值一样将表的长度-1
// 表长度减1
L.length--;

View File

@@ -1,11 +1,4 @@
/*
* @Description: 直接插入排序【伪代码】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-25 08:07:23
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-26 07:29:00
*/
// 直接插入排序【伪代码】
void straightInsertSort(ElemType A[], int n){
int i,j;

View File

@@ -1,17 +1,5 @@
/*
* @Description: 直接插入排序【JavaScript版本】
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-25 08:14:07
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-26 07:29:47
*/
/**
* 插入排序
* @param{Array} arr 待排序的数组
* @param{int} len 数组arr的长度可以用arr.length()计算得到
* 直接插入排序【JavaScript版本】
*/
function straightInsertSort(arr, len) {
// 重新确定数组长度
@@ -29,7 +17,6 @@ function straightInsertSort(arr, len) {
arr[j + 1] = arr[j]
}
// 跳出循环逻辑出现arr[j] > arr[j-1]
// 哨兵即待排序的
arr[j + 1] = temp
}

View File

@@ -1,52 +1,55 @@
/**
* 导航栏配置
*/
export const navbar = [
{
text: '首页',
link: '/'
},
// {
// text: "算法恶补",
// children: [{
// text: '习题狂刷',
// link: '/manuscripts/algorithm/topic_practice'
// }, {
// text: '刷题笔记',
// link: '/manuscripts/algorithm/algorithm_note'
// }, {
// text: '在线刷题',
// children: [{
// text: '杭电OJ', link: 'http://acm.hdu.edu.cn/'
// },
// {
// text: '牛客网', link: 'https://www.nowcoder.com/'
// }, {
// text: 'LeetCode', link: 'https://leetcode-cn.com/'
// }]
// }]
// },
{
text: "数据结构",
link: "/manuscripts/ds"
},
{
text: "操作系统",
link: "/manuscripts/os"
},
{
text: "计算机组成原理",
link: "/manuscripts/ccp"
},
{
text: '首页',
link: '/'
},
// {
// text: "算法恶补",
// children: [{
// text: '习题狂刷',
// link: '/manuscripts/algorithm/topic_practice'
// }, {
// text: '刷题笔记',
// link: '/manuscripts/algorithm/algorithm_note'
// }, {
// text: '在线刷题',
// children: [{
// text: '杭电OJ', link: 'http://acm.hdu.edu.cn/'
// },
// {
// text: '牛客网', link: 'https://www.nowcoder.com/'
// }, {
// text: 'LeetCode', link: 'https://leetcode-cn.com/'
// }]
// }]
// },
{
text: "数据结构",
link: "/manuscripts/ds"
},
{
text: "操作系统",
link: "/manuscripts/os"
},
{
text: "计算机组成原理",
link: "/manuscripts/ccp"
},
{
text: "计算机网络",
link: "/manuscripts/cn"
},
{
text: "大事记",
link: "/big-event-history"
},
{
text: '其他',
link: "/manuscripts/note-map"
},
{
text: "计算机网络",
link: "/manuscripts/cn"
},
{
text: "网站动态",
link: "/big-event-history"
},
{
text: '思维导图',
link: "/manuscripts/note-map"
},
];

View File

@@ -1,14 +1,17 @@
import {searchProPlugin} from "vuepress-plugin-search-pro";
/**
* 插件配置
*/
export default {
plugins:[
plugins: [
searchProPlugin({
// 索引全部内容
indexContent: true,
// 为分类和标签添加索引
customFields: [
{
getter: (page:any) => page.frontmatter.category,
getter: (page: any) => page.frontmatter.category,
formatter: "分类:$content",
},
{

View File

@@ -1,14 +1,16 @@
import {algorithmSidebar} from "../../manuscripts/algorithm/algorithm.sidebar";
import {dsSidebar} from "../../manuscripts/ds/ds.sidebar";
import {cppSidebar} from "../../manuscripts/ccp/cpp.sidebar";
import {cnSidebar} from "../../manuscripts/cn/cn.sidebar";
import {noteMapSidebar} from "../../manuscripts/note-map/note-map.sidebar";
import {osSidebar} from "../../manuscripts/os/os.sidebar";
/**
* 侧边导航栏设置
*/
export const sidebar = {
"/manuscripts/ds": dsSidebar,
"/manuscripts/os": osSidebar,
"/manuscripts/ccp": cppSidebar,
"/manuscripts/cn": cnSidebar,
"/manuscripts/note-map": noteMapSidebar,
"/manuscripts/ds": dsSidebar,
"/manuscripts/os": osSidebar,
"/manuscripts/ccp": cppSidebar,
"/manuscripts/cn": cnSidebar,
"/manuscripts/note-map": noteMapSidebar
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

View File

@@ -1,13 +0,0 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:20:06
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:20:06
-->
## 算法
doing

View File

@@ -1,16 +0,0 @@
export const algorithmSidebar = [
{
text: '基础入门',
link: '/ds/basic_introduction',
collapsible: false,
children: [{
text: '1.1 基本概念',
link: '/ds/basic_introduction/1.basic_concepts.md'
}, {
text: '1.2 数据结构三要素',
link: '/ds/basic_introduction/2.three_elements_of_data_structure.md'
}, {
text: '1.3 算法和算法评价',
link: '/ds/basic_introduction/3.algorithm_and_algorithm_evaluation.md'
}]
}]

View File

@@ -1,12 +0,0 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:24:06
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:24:07
-->
## 刷题笔记
doing

View File

@@ -1,20 +0,0 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:24:32
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:24:32
-->
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:24:06
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:24:07
-->
## 习题练手
doing

View File

@@ -1,15 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:54:07
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:10:04
-->
## 基础概念
### 数据

View File

@@ -1,16 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:55:06
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:08:22
-->
## 数据结构三要素
- 数据的逻辑结构

View File

@@ -1,15 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:55:28
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:11:34
-->
## 算法和算法评价

View File

@@ -1,12 +1,2 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:09:44
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 09:04:02
-->
![](./basic_introduction.png)

View File

@@ -1,11 +1,3 @@
<!--
* @Description: 恶补算法
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-19 08:56:55
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-19 08:56:56
-->
## 算法恶补

View File

@@ -1,15 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:57:27
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-23 23:56:27
-->
# 线性表的基础概念和基本操作
> 强调线性表是一种逻辑结构,不是存储结构

View File

@@ -1,14 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:57:52
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:15:49
-->
# 线性表的顺序表示

View File

@@ -1,16 +1,3 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:58:40
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:07:59
-->
# 线性表的链式表示
顺序表的插入、删除操作需要移动大量元素影响了运行效率虽然时间复杂度为O(1)的情况也存在)。

View File

@@ -1,16 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:59:05
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:08:04
-->
# 双链表

View File

@@ -1,16 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:59:27
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:08:08
-->
# 循环链表
- 循环单链表

View File

@@ -1,16 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 21:59:47
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:08:15
-->
# 静态链表
> 借助数组来描述线性表的链式存储结构,结点元素同样存在数据域`data`和指针域`next`

View File

@@ -1,15 +1,3 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 22:00:10
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 08:08:20
-->
# 顺序表和链表的比较

View File

@@ -1,20 +1,5 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 22:00:36
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:18:14
-->
# 存储结构的选取
### 基于存储的考虑
- 对线性表的长度和存储规模难以估计时,不宜采用顺序表存储

View File

@@ -1,15 +1,4 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-07 22:00:53
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 00:17:56
-->
# 零碎知识补充
- 无论是链表的插入还是删除操作,必须保证不断链【重要】

View File

@@ -1,12 +1,3 @@
<!--
* @Description: 线性表
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2022-04-24 08:10:42
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2022-04-24 09:03:44
-->
# 线性表
![](./线性表_水印.png)

View File

@@ -1,14 +1,3 @@
<!--
* @Description: 基本概念和基本操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-01-11 23:56:02
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-12 00:02:55
-->
# 基本概念和基本操作
`栈` 只允许在一端进行插入或者删除操作的**线性表**`后进先出的线性表`

View File

@@ -1,14 +1,3 @@
<!--
* @Description: 栈的顺序存储结构
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-01-15 16:57:37
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-12 08:05:50
-->
# 栈的顺序存储结构

View File

@@ -1,12 +1,3 @@
<!--
* @Description: 栈的链式存储结构
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-12 08:15:40
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-13 17:05:26
-->
# 栈的链式存储结构

View File

@@ -1,12 +1,3 @@
<!--
* @Description: 队列的基本概念和基础操作
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-18 06:15:40
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-14 11:08:32
-->
# 队列的基本概念和操作

View File

@@ -1,13 +1,3 @@
<!--
* @Description:
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2020-03-1 07:23:48
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-18 23:51:35
-->
# 队列的顺序存储结构

View File

@@ -1,12 +1,3 @@
<!--
* @Description: 队列的链式存储结构
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-19 08:22:39
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-20 16:10:16
-->
# 队列的链式存储结构

View File

@@ -1,14 +1,3 @@
<!--
* @Description: 栈和队列的应用
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-14 21:48:49
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-14 21:49:02
-->
# 栈和队列的应用

View File

@@ -1,12 +1,3 @@
<!--
* @Description: 特殊矩阵的压缩存储
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-20 16:18:51
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-20 17:04:44
-->
# 特殊矩阵的压缩存储

View File

@@ -1,13 +1,3 @@
<!--
* @Description: 数据结构-栈和队列
* @Version: Beta1.0
* @Author: 【B站&公众号】Rong姐姐好可爱
* @Date: 2021-03-22 08:02:29
* @LastEditors: 【B站&公众号】Rong姐姐好可爱
* @LastEditTime: 2021-03-22 08:02:43
-->
# 栈和队列
### 主要内容

View File

@@ -1,2 +1,8 @@
# 计算机网络
# 计算机网络
<iframe
src="https://142vip-cn.feishu.cn/share/base/view/shrcnpso8R4vCid01wmg66hFjae"
width="100%"
height="600px"
/>

View File

@@ -1,23 +1,20 @@
export const noteMapSidebar = [{
text: '考研相关',
children: [{
text: '测试',
link: '/333'
}]
}, {
text: '思维导图',
children: [{
text: '数据结构',
link: 'ds-map.md'
}, {
text: '操作系统',
link: 'os-map.md'
}, {
text: '计算机组成原理',
link: 'ccp-map.md'
}, {
text: '计算机网络',
link: 'cn-map.md'
}]
}]
export const noteMapSidebar = [
{
text: '思维导图',
children: [
{
text: '数据结构',
link: 'ds-map.md'
}, {
text: '操作系统',
link: 'os-map.md'
}, {
text: '计算机组成原理',
link: 'ccp-map.md'
}, {
text: '计算机网络',
link: 'cn-map.md'
}]
}
]

View File

@@ -3,25 +3,13 @@
### 2020年
#### 7月
- [【2020-07-26】微信公众号我来了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483659&idx=1&sn=ac7b633a45ac06d388e0698163a2543e&chksm=fcdfb887cba8319151aedfa80c5b59d130838af81fe51c76e5c4926f82f4937b51c8c0c1470e&token=1304241434&lang=zh_CN#rd)
- [【2020-07-27】介绍一下我在B站](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483760&idx=1&sn=30a9fa2a051079c5330039615950c34d&chksm=fcdfb8fccba831ea64644be501ecca3cea5846f16367faed9c84b44a30d9b6dc30456dae6548&token=1304241434&lang=zh_CN#rd)
- [【2020-07-28】五年了我终于换了人生中的第一台MacBookPro](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483762&idx=1&sn=e9ea759f1c1589881cc3bd9cabddb70a&chksm=fcdfb8fecba831e8c4635a4cefd302977071ed11a4dda6161cf9ad8458865297194f87cb013a&token=1304241434&lang=zh_CN#rd)
- [【2020-07-29】工作中第一次被喷我到底是如何应对的?](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483770&idx=1&sn=6b760873a814f4e18baab415bee3d863&chksm=fcdfb8f6cba831e00802de653ff6723a0bb169a93fe3a6a9762ee62d75d8cd88409268db9047&token=1304241434&lang=zh_CN#rd)
- [【2020-07-31】CSDN关注100了就这](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483778&idx=1&sn=3d9f623c58d595f75d7092783a6c5abe&chksm=fcdfb80ecba83118e76de1ed88a5be51229e4145182aee6e0bcc13e4697707cf9f4609d8799d&token=1304241434&lang=zh_CN#rd)
@@ -30,89 +18,33 @@
#### 8月
- [【2020-08-01】旧友相见甚是怀念](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483790&idx=1&sn=76e13ac79ad498309542c9f41878bb1c&chksm=fcdfb802cba8311456ea9ff3309c4354055022cd0056b13c11fac44252231550e17a03f26f29&token=639111151&lang=zh_CN#rd)
- [【2020-08-03】JavaScript基础介绍和快速入门](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247483805&idx=1&sn=4da4e0d3a2912aee146248c1d8f7f96f&chksm=fcdfb811cba83107fd8f08d3e35af7c72bf7d908d577ad83e45d80b0e9d1bbdbf16b1f169d64&token=639111151&lang=zh_CN#rd)
#### 9月
- [【2020-09-01】Redis的简单安装和部署 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484600&idx=1&sn=489aa1bd12487b0bf8f2a7694f4ca1aa&chksm=fcdfbd34cba83422f0afee027747d9e95773e093fa3a24225c2729029c4392bf42043964782f&token=1613702159&lang=zh_CN#rd)
- [【2020-09-01】就很像 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484600&idx=2&sn=a9962c6ca3a5eddd085bcd15617f64d9&chksm=fcdfbd34cba83422b987020a858b7cf31bfde6033642d697d5a00ad9ed618f3cf14deb207d67&token=1613702159&lang=zh_CN#rd)
- [【2020-09-03】shell编程基础整理 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484702&idx=1&sn=6e3e862153755d9e61f5f4ebf220381d&chksm=fcdfbc92cba835844e8b6fd37d86a34ccf83342895f448c88ba5b62db974eb536a8e74a121aa&token=1613702159&lang=zh_CN#rd)
- [【2020-09-03】大学四年建站用过的云服务器都在这里了 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484702&idx=2&sn=c7589eecbe58ff8939f72c0ff0bf567d&chksm=fcdfbc92cba83584b03dfeea7290606ce8249b0c3105b0b3b95a9087c77e3b1c7f863d8e30f9&token=1613702159&lang=zh_CN#rd)
- [【2020-09-04】面试复盘和思考 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484711&idx=1&sn=bf362439ccfad04da53ce65c824a988d&chksm=fcdfbcabcba835bddc43c40fd3a454793adf7849a5d5bb356825d481b82ae3e58a749859502c&token=1613702159&lang=zh_CN#rd)
- [【2020-09-06】朋友是“无用”的不是你瞧不起我就是我瞧不起你 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484759&idx=1&sn=e0f8a7a70ddede75d94b202ddc6106d6&chksm=fcdfbcdbcba835cd2138658d750f7e09a820b34daf4624f253a21a11b5de56635d35e4c0df19&token=1613702159&lang=zh_CN#rd)
- [【2020-09-06】GitHub简单使用 ](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484759&idx=2&sn=ade86739c94f99f944a3d387bc7e13ef&chksm=fcdfbcdbcba835cd192c3b7b7eeea8f5dbb16b2b2fa58b6e2094184f5aa3341927a6d1fad6f8&token=1613702159&lang=zh_CN#rd)
- [【2020-09-07】MySQL日志类型把我难哭了你学废了吗](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484771&idx=1&sn=6ae4c6e8d333b0e1aa5cd1aee161d9b8&chksm=fcdfbcefcba835f94e3c0abc189477f241f675f38a63eb03bd320447e89da39cb08b72038ba3&token=1613702159&lang=zh_CN#rd)
- [【2020-09-11】向各位汇报这周状态再也不敢鸽了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484783&idx=1&sn=b9e82a2c2b04b7050d0659085af537ef&chksm=fcdfbce3cba835f5e692f5ffbb16505dbf3b5ccc9bb0bdf4b3f467629b293d0e0ce3086ec8dc&token=639111151&lang=zh_CN#rd)
- [【2020-09-11】向各位汇报这周状态再也不敢鸽了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484783&idx=1&sn=b9e82a2c2b04b7050d0659085af537ef&chksm=fcdfbce3cba835f5e692f5ffbb16505dbf3b5ccc9bb0bdf4b3f467629b293d0e0ce3086ec8dc&token=639111151&lang=zh_CN#rd)
- [【2020-09-12】向各位汇报再也不敢鸽了人生处处有惊喜](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484784&idx=1&sn=ae73f1f4e53b622039a75ec41cabe378&chksm=fcdfbcfccba835eafefe304913e4078cf8dfac22f62fd9d686b307bbdf46d147016f5e876e05&token=639111151&lang=zh_CN#rd)
- [【2020-09-13】来来来无厘头技术(水)文,各种尬。简简单单评价一下](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484815&idx=1&sn=10d26a600112ec4f95b3b3f470955744&chksm=fcdfbc03cba83515b07f0ae6cee791d1fb5fd619364cff3a17a4deab91333f0a6277b09a66a9&token=639111151&lang=zh_CN#rd)
- [【2020-09-13】基础Brew和Tree的安装实录](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484815&idx=2&sn=94a6455ed6b17fa5b27e96358e935803&chksm=fcdfbc03cba83515d13dcfc2dea2445085a34ff4360e0a367fd914bb04bc6ba18a780a0cd2d2&token=639111151&lang=zh_CN#rd)
- [【2020-09-13】PM2进程管理给我学](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484815&idx=3&sn=38a289efffda9510b5ff04c5bed0663e&chksm=fcdfbc03cba835154c888b9d7f86eac85c250eefb9d053687173274373f2f8d7b19fc307e76a&token=639111151&lang=zh_CN#rd)
- [【2020-09-14】数据结构一定要学废了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484823&idx=1&sn=d41bb8da02585cf9ea8d0b3ef27e3dbb&chksm=fcdfbc1bcba8350d84ba2f01eaf187cbaa2d4cf5a9078beb1f2fafe94edb0126c82595ed8191&token=368257571&lang=zh_CN#rd)
- [【2020-09-16】ELK基础概念与常用架构整理](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484837&idx=1&sn=7f0de3eeea3fc6ee299587704f5c44cd&chksm=fcdfbc29cba8353fd894582da7ae2c93b5920c4dbb1e197b011a817dc0962e317842a32d5560&token=368257571&lang=zh_CN#rd)
- [【2020-09-17】分享书上一段话问一个问题](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484850&idx=1&sn=7af55ef3a7d843d9c43de6d6c7911da3&chksm=fcdfbc3ecba835287b2c644cda606454a713d370fbd7d14714b22a04277f7a7784b96b8b277e&token=368257571&lang=zh_CN#rd)
- [【2020-09-17】看源码遇到的三个知识点一个也没懂](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484850&idx=2&sn=c59839c677d7c9652a09d1f8c70ef8d6&chksm=fcdfbc3ecba83528cf8271a2615129340a6f11954b6d9396160d0fb2c41593253d5e3510a031&token=368257571&lang=zh_CN#rd)
- [【2020-09-20】express()函数整理](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484865&idx=2&sn=63e6b669341217135013816464dd5bd9&chksm=fcdfbc4dcba8355b4de0f712047709425a35fa3b122378b31f0e4db3afb82dfd38872862aab4&token=368257571&lang=zh_CN#rd)
- [【2020-09-22】入秋了安好](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484865&idx=1&sn=e39e3547da49f40e1b64deadf9a9cfef&chksm=fcdfbc4dcba8355bfa9c8b9531a463fc652b764064528dd6c243f47a157b20e017bad3f410f4&token=368257571&lang=zh_CN#rd)
- [【2020-09-22】Nginx安装详解我服务器上也是这样的](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484897&idx=1&sn=b1073522cfd3ce6ebbe85e85ad4e35e0&chksm=fcdfbc6dcba8357bdb212c9db1378a045d0dcfd95b79ed05688180f05d2b391f9b724d0d752f&token=368257571&lang=zh_CN#rd)
- [【2020-09-22】被攻击的一天](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484897&idx=2&sn=34c61ed01c6522d2861be3342ec12ad5&chksm=fcdfbc6dcba8357b76eb0fe6c502d932def6cd232297b010f9b2f9a1fca35c38df77dacce7f2&token=368257571&lang=zh_CN#rd)
- [【2020-09-26】跟父亲视频的一个半小时聊到了我也聊到了Ta](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484929&idx=1&sn=394783dd2bfd65da24ae6dcb89d69ec6&chksm=fcdfbf8dcba8369b926b7083bbe3515aa5857f7589acc3f9d6d4987c67539a76dbd6e3cb70a1&token=368257571&lang=zh_CN#rd)
@@ -120,96 +52,44 @@
#### 10月
- [【2020-10-07】时间太快溜了溜了杭州见](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484943&idx=1&sn=ad37db87dc40f381fd18cc828e492384&chksm=fcdfbf83cba8369598fc2773b63df235a9719b43749e7daab753c621fef5af4fba054dbb46ea&token=368257571&lang=zh_CN#rd)
- [【2020-10-14】写不了代码就不写嘛](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484951&idx=1&sn=edddf3d6c8f3fc6dd1d14063b536c732&chksm=fcdfbf9bcba8368d81ddffcbd258f7e4b7fb573d2a8963859e1b156e8a5f5d81f5629c49be6e&token=368257571&lang=zh_CN#rd)
- [【2020-10-18】我不行了这号关注量男女7:3 还怎么相亲嘛?](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484968&idx=1&sn=d37960ed81044fbf314440af85049d65&chksm=fcdfbfa4cba836b25082535910f7137d1513d834d54fbfadf48a433b29511ccf4d532f19b88a&token=368257571&lang=zh_CN#rd)
- [【2020-10-26】悄悄接你下班陪你回家](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247484988&idx=1&sn=947c487946fa3574d33e9c6861a1ee28&chksm=fcdfbfb0cba836a626d2efa904a5177c2e0916c381b26c89b6dcfc610a380b906d4480f7cc9b&token=368257571&lang=zh_CN#rd)
#### 11月
- [【2020-11-01】11月你好](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247485002&idx=1&sn=3760eba58f7ded433b71bec48b89a681&chksm=fcdfbfc6cba836d0b7db1f2aa5a4a884f68f8ce20a59aa44b4ac46c59eb4dd1c233079241a4a&token=368257571&lang=zh_CN#rd)
- [【2020-11-15】她来了她来了她带着剪了三遍的视频来了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247485042&idx=1&sn=181ae5062c31ee7931390607b6f10358&chksm=fcdfbffecba836e8275c849007470db6964f7cd675af59fe73c94369334d17d4840e8c0413d5&token=898438314&lang=zh_CN#rd)
- [【2020-11-18】陪我一路的小姐姐谢谢啦~ 我大意了呀,没有闪](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247485053&idx=1&sn=ed2fe0de87b70781cdb7755ef4726340&chksm=fcdfbff1cba836e7165dc53722aaf96ef38d8f43cfadadcb4695d8ff430ea64619caada81cfa&token=1939941957&lang=zh_CN#rd)
- [【2020-11-30】11月的尾巴12月你好](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247485066&idx=1&sn=1d357917f548a6d977af96c6582db527&chksm=fcdfbf06cba836103152f7a3fdfbf97c1be2472a84f824cbddd532c15aefe14c71b3b076233f&token=831506871&lang=zh_CN#rd)
#### 12月
- [【2020-12-06】周末小记——忆旧友、吃火锅也会感慨](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&mid=2247485080&idx=2&sn=bdc551f2e9bf54dc01881979339af8ad&chksm=fcdfbf14cba836022a05854547cbca03b5a08b912a0e0f195d4856d6b53ecd78aee2f167b515&token=1581389686&lang=zh_CN#rd)
- [【2020-12-10】上火、牙疼也要砍程序媛一刀](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485100&amp;idx=1&amp;sn=e7c0c41229d51ebfab2939deb1751672&amp;chksm=fcdfbf20cba836364da35ab5acfed076876aae486126bc1c41cdd2502cc89a41cbde7c645610&token=1054397108&lang=zh_CN#rd)
- [【2020-12-17】今晚不蹦迪来聊一聊个人项目的接口返回](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485136&amp;idx=1&amp;sn=4619fb835e6d57e106ab01116012662a&amp;chksm=fcdfbf5ccba8364aecddf14d11ed8ba36f38050b83b30b8d46e10f86b164aab05322b8455b36&token=755050934&lang=zh_CN#rd)
- [【2020-12-20】事情从英吉利海岸的那杯卡布奇诺美式咖啡说起](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485180&amp;idx=1&amp;sn=15ab9be3e15130103f26c919cbe0b605&amp;chksm=fcdfbf70cba83666d287acc35485d02ddf67bacad6ea46d9ef04521f9f429fcb015d371c918e&token=1356818265&lang=zh_CN#rd)
### 2021年
#### 1月
- [【2021-01-06】谁在看小王子呀~](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485228&amp;idx=1&amp;sn=1c30866a209af2a5eb927fd7bd63cc8b&amp;chksm=fcdfbea0cba837b6d4cf9865b72a6a1553c4d9b6a6cce369bb09f66730ab37ec649071e7ab7c&token=1356818265&lang=zh_CN#rd)
- [【2021-01-15】2020小结没事就点点看看呗反正小目标都没完成](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485249&amp;idx=1&amp;sn=dadf2a6dbed1879bbd98c62491436a9c&amp;chksm=fcdfbecdcba837db5c11b8023ffa7ad6cf5a47c03027a0029604a50d0a77c75908efc05af39a&token=1356818265&lang=zh_CN#rd)
- [【2021-01-17】搞波大的浅谈深拷贝——文末有彩蛋](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485258&amp;idx=1&amp;sn=fb71007a5feed8e18674be27b1c749ab&amp;chksm=fcdfbec6cba837d099e90a5f45781ee8cac474388e25ad9383a4fbc05fdb16a8e1377265c018&token=1356818265&lang=zh_CN#rd)
- [【2021-01-18】到底该如何发布Npm插件常用指令在这里](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485277&amp;idx=1&amp;sn=9eb7c3cef21ace2cc5853e382f2bb03f&amp;chksm=fcdfbed1cba837c7839f3b57836f43b3425c8b5a7888f543bf4a1dd8b39cd82ed7d51a24a685&token=1356818265&lang=zh_CN#rd)
- [【2021-01-20】好用的AntDocs也来学着用一下基本过程整理](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485291&amp;idx=1&amp;sn=19f13df8131a9f662973f2d9240c1eab&amp;chksm=fcdfbee7cba837f180d8ad30735cd61e6c73fe195e63d46046bb24f80e1536aa0a585c3e1015&token=1356818265&lang=zh_CN#rd)
- [【2021-01-27】【持续更新】从查找算法开始数据结构入门大家都在掘金等你](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485318&amp;idx=1&amp;sn=6ae5fc9f1cf994818ff89d53a926761e&amp;chksm=fcdfbe0acba8371c9d0025008084857cf14c52b01dfb1b9460d3388ba543c36da2abcbf90216&token=1356818265&lang=zh_CN#rd)
- [【2021-01-30】ORM框架入门之Sequelize我快翻译不动了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485341&amp;idx=1&amp;sn=fc493c28ab138056567e916b769ddbf2&amp;chksm=fcdfbe11cba8370793e8e0d71e7766f4e1e7f3e8672921d6b98757f7d7b271b290f3edc65d6f&token=1356818265&lang=zh_CN#rd)
#### 2月
- [【2021-02-07】被妹妹支配的一周晚上差点连家都回不去..](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485376&amp;idx=1&amp;sn=049a5df5cb97786e80aded38a1bf3732&amp;chksm=fcdfbe4ccba8375a52cb8d7077836216e5f5f41ee9453aebf524eb0a5d8a5db48cbabc11f3e4&token=1356818265&lang=zh_CN#rd)
- [【2021-02-11】【新年快乐】程序员的2020就这样悄咪咪地溜走了](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485404&amp;idx=1&amp;sn=276100858df23daf987dbc68997477df&amp;chksm=fcdfbe50cba837460079fc9ab414754a49668f82dc0f6a5a41ec320d3e5dd77c1a8c271e061b&token=1356818265&lang=zh_CN#rd)
- [【2021-02-13】抢红包、拼手气来啦之前答应的抽奖变成新年红包啦~](https://mp.weixin.qq.com/s?__biz=MzU3MTUxOTIwMw==&amp;mid=2247485420&amp;idx=1&amp;sn=26c0e3690363af5dddd805ae417eeee9&amp;chksm=fcdfbe60cba8377645e44333ccbe35147b9844578008e5699aba62b82c12fc03634e2d68781c&token=1356818265&lang=zh_CN#rd)

View File

@@ -2,7 +2,7 @@
headerDepth:4
---
## 写最前面
## 写最前面
<div style="text-align: center">
<div align="center" >
@@ -72,7 +72,7 @@ headerDepth:4
> 所有内容会选择性的发表于**微信公众号、博客、掘金、CSDN、Github ,实际内容以本仓库排版、校对为主。** 代码会不定期同步到 **码云** 。
**有效访问链接的代表尚未完成,大家善用快捷键`Ctrl+F`**
**缺少有效访问链接的代表尚未完成,大家善用快捷键`Ctrl+F`**
## 日常推荐

View File

@@ -66,11 +66,12 @@ footerWrap:
- title: 哔哩哔哩
link: https://space.bilibili.com/350937042
details: 不定期更新
---
---
### 本地浏览【推荐】
由于平台、网络等原因,在线浏览容易出现加载面、加载不出来等常见问题,因此非常建议在本地进行浏览、学习;**下面指令默认你已经安装[Git](https://git-scm.com/download)、[NPM](https://www.npmjs.com/)、[PNPM](https://www.pnpm.cn/)、[Yarn](https://yarn.bootcss.com/)、[Node](http://nodejs.cn)等环境,并对此有一定了解!**
@@ -92,7 +93,6 @@ git pull
pnpm install
## 执行dev指令本地启动项目打开http://localhost:4200即可访问文档
pnpm dev
```
@@ -143,14 +143,14 @@ yarn run dev
### 在线浏览
[https://408.142vip.cn](https://408.142vip.cn)
- 稳定版: <https://408.142vip.cn>
网站无法访问时,建议通过科学上网访问备用网络
> 网站无法访问时,建议通过科学上网访问备用网络
- Github [https://142vip.github.io/408CSFamily](https://142vip.github.io/408CSFamily)
- Netlify [https://408-family.netlify.app](https://408-family.netlify.app)
- Vercel [https://408-family.vercel.app](https://408-family.vercel.app)
- Github <https://142vip.github.io/408CSFamily>
- Netlify <https://408-family.netlify.app>
- Vercel <https://408-family.vercel.app>
@@ -180,6 +180,18 @@ yarn run dev
**以下排名不分先后! 还木有收到赞助,哈哈哈,先留坑**
### 贡献
感谢向仓库提交mr的所有开发者
[![contributors](https://contrib.rocks/image?repo=142vip/408CSFamily)](https://github.com/142vip/408CSFamily/graphs/contributors)
### 趋势
<div style="text-align: center" align="center">
<img alt="Star History" src="https://api.star-history.com/svg?repos=142vip/408CSFamily&type=Date" >
</div>
### 联系作者
@@ -247,6 +259,21 @@ yarn run dev
style="margin: 5px;width: 24px;height: 24px;">
</a>
</div>
<div align="center">
<div id="">
<a href="https://github.com/mmdapl" target="_blank">
<img alt="作者: 储凡" src="https://img.shields.io/badge/Author-Chu·Fan-8A2BE2.svg?style=for-the-badge" style="text-align: center;">
</a>
</div>
<div style="padding: 5px">
<a href="https://app.netlify.com/sites/408-family/deploys" target="_blank" style="padding: 5px">
<img alt="Netlify" src="https://api.netlify.com/api/v1/badges/75a7251a-f873-4aff-b387-6449ca241ef7/deploy-status">
</a>
<a href="https://vercel.com/142vip/408/deployments" target="_blank" style="padding: 5px">
<img alt="Vercel" src="https://therealsujitk-vercel-badge.vercel.app/?app=408">
</a>
</div>
</div>
</div>
交流/加群/互看朋友圈
@@ -256,3 +283,5 @@ yarn run dev

View File

@@ -1,26 +1,43 @@
{
"name": "408CSFamily",
"description": "专业代号408 ,计算机基础知识点合集",
"version": "0.0.0",
"main": "index.js",
"scripts": {
"prepare": "husky install && npx husky add .husky/pre-commit \"npm run lintfix\" && chmod +x .husky/pre-commit",
"dev": "vuepress dev docs",
"build": "vuepress build docs",
"build-proxy": "PROXY_DOMAIN=true vuepress build docs",
"image": "bash scripts/build_image.sh $npm_package_version",
"faster-image": "bash scripts/build_image.sh $npm_package_version faster",
"ali": "bash scripts/deploy.sh ali $npm_package_version",
"github": "bash scripts/page_deploy.sh",
"clean": "find . -name \"node_modules\" -type d -exec rm -rf '{}' +",
"lint": "eslint --ext .js,.vue,.ts --ignore-path .gitignore .",
"lintfix": "eslint --fix --ext .js,.ts,.vue --ignore-path .gitignore ."
},
"description": "专业代号408计算机基础知识点合集",
"version": "0.0.1-alpha.1",
"packageManager": "pnpm@7.2.1",
"author": {
"name": "Chu Fan",
"email": "fairy_408@2925.com",
"url": "https://github.com/142vip"
},
"scripts": {
"prepare": "husky install && npx husky add .husky/pre-commit \"npm run lintfix\" && chmod +x .husky/pre-commit",
"dev": "vuepress dev docs",
"build": "vuepress build docs",
"build:proxy": "PROXY_DOMAIN=true vuepress build docs",
"image": "bash scripts/build_image.sh $npm_package_version",
"image:faster": "bash scripts/build_image.sh $npm_package_version faster",
"deploy:ali": "bash scripts/deploy.sh ali $npm_package_version",
"deploy:github": "bash scripts/page_deploy.sh",
"version:alpha": "npm version prerelease --preid alpha",
"version:patch": "npm version patch",
"lint": "eslint --ext .js,.vue,.ts --ignore-path .gitignore .",
"lintfix": "eslint --fix --ext .js,.ts,.vue --ignore-path .gitignore .",
"clean": "find . -name \"node_modules\" -type d -exec rm -rf '{}' +"
},
"scripts-info": {
"prepare": "安装依赖预执行脚本",
"dev": "本地启动项目",
"build": "构建、打包",
"build:proxy": "构建、打包,支持项目名代理,使用第三方托管平台",
"image": "容器打包、构建镜像",
"image:faster": "本地build后快速构建镜像",
"deploy:ali": "部署到阿里云服务器",
"deploy:github": "部署到github平台集成ci",
"version:alpha": "alpha测试版号更新基于next分之操作",
"version:patch": "稳定版号更新基于master分支操作",
"lint": "eslint校验代码指出异常",
"lintfix": "格式化代码,自动化处理异常",
"clean": "快速删除本地依赖"
},
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^5.54.0",
"@typescript-eslint/parser": "^5.54.0",

4194
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,7 @@
## 日志颜色定义
readonly successLogger="\033[36m"
readonly errorLogger="\033[1;31m"
readonly warnLogger="\033[1;33m"
## 定义时间
readonly currentTime=$(date "+%Y-%m-%d %H:%M:%S")
## 项目名称
@@ -24,6 +24,7 @@ isFaster=${2}
imageTagName=${repoAddress}:${projectName}-${version}
## 预检查
prepare_check(){
if test -z "${version}";then
echo -e "${errorLogger}${currentTime}:参数错误 版本号不能为空。参考版本: 0.0.x"
@@ -31,15 +32,29 @@ prepare_check(){
fi
}
## 运行命令
run(){
echo -e "${successLogger}---------------- shell ${projectName} start ---------------- "
if [ "${isFaster}" == "faster" ];then
## 本地构建、快速制作镜像
pnpm build && docker build -f Faster.Dockerfile --build-arg APP_VERSION="${version}" -t "${imageTagName}" .
pnpm build && docker build \
--build-arg APP_VERSION="${version}" \
--build-arg CONTAINER_BUILD=false \
-t "${imageTagName}" .
else
## ci流程构建
docker build -f Dockerfile --build-arg APP_VERSION="${version}" -t "${imageTagName}" .
## ci流程,容器构建打包
docker build \
--build-arg APP_VERSION="${version}" \
--build-arg CONTAINER_BUILD=true \
-t "${imageTagName}" .
echo 12312
echo docker build \
--build-arg APP_VERSION="${version}" \
--build-arg CONTAINER_BUILD=true \
-t "${imageTagName}" .
fi
echo -e "${successLogger}---------------- shell ${projectName} end ---------------- "

View File

@@ -120,7 +120,6 @@ deploy_to_github(){
git config --list
# if you are deploying to https://<USERNAME>.github.io
# git push -f git@github.com:<USERNAME>/<USERNAME>.github.io.git master
# if you are deploying to https://<USERNAME>.github.io/<REPO>

View File

@@ -2,7 +2,7 @@
## 功能设置docker自定义network并指定网关、IP范围
## 参考https://blog.csdn.net/Dontla/article/details/125210694
## 作者:Rong姐姐好可爱
## 作者:储凡
## 使用示例bash xxx.sh 容器名称 镜像地址
##
@@ -70,7 +70,7 @@ init_network(){
docker network ls
exit ;
else
echo -e "${successLogger}---------------- 网络${networdefaultNetworkNamekName},现进行初始化 ---------------- "
echo -e "${successLogger}---------------- 网络${defaultNetworkName},现进行初始化 ---------------- "
docker network ls
docker network create \
--subnet="${subnet}" \

View File

@@ -6,8 +6,6 @@ set -e
npm run build-proxy && cd docs/.vuepress/dist
git init && git add -A
## 如果没有输入commit信息则采用默认