简易的终端染色方案 在使用Windows终端中的PowerShell时,经常会有很多命令与输出混在一起,分辨不出每条命令的起始位置。一种解决方案是通过on-my-posh的主题美化Windows终端,但有一个缺点是性能非常低,每次启动、回车之后都有肉眼可见的延迟。那么退而求其次,当不需要非常漂亮的美化主题,而只是需要将命令行的每次输出路径染色,可以通过修改PowerShell的配置文件来完成。当进入git仓库时,也可 2025-04-14 工具 #终端
单调栈、单调队列 单调栈栈中的元素保持单调递增或单调递减的顺序。单调栈通常用于解决一些需要找到某个元素左边或右边第一个比它大或小的元素的问题。 下一个(严格)更大元素注意栈中存储的是元素的下标。 123456789101112131415vector<int> nextGreaterElement(vector<int>& nums) { int n = nums.s 2025-04-06 数据结构与算法 #数据结构
长整数加法 问题:输入两个正整数,输出和。输入以字符串形式给出。 这里介绍两种思路。 通过std::string存储与逐位计算适合处理中等长度的整数(例如几十位到几百位)。 123456789101112131415161718192021222324252627282930std::string addLongIntegers(const std::string& num1, const std 2025-04-06 数据结构与算法 #算法
快速幂 原理:$$\begin{aligned}a^b = \begin{cases}&a \cdot a^{b-1}, & b \text{ 为奇数} \newline&\left(a^{\frac{b}2}\right)^2, & b \text{ 为偶数}.\end{cases}\end{aligned}$$例如求 $2^{13}$ 的过程如下: $a^{ 2025-04-06 数据结构与算法 #算法
并查集 并查集并查集(Disjoint Set Union)是一种管理元素分组的数据结构,支持两种基本操作:查找元素属于哪个集合、合并两个集合。并查集通常使用路径压缩和按秩合并来优化性能。 实现思路 初始化:每个元素最初都是自己的父节点,秩(rank)为0。 查找:通过递归查找元素的根节点,并在查找过程中进行路径压缩。 合并:将两个集合的根节点合并,按秩合并以保持树的平衡。 使用数组的实现已知有 $n$ 2025-04-06 数据结构与算法 #数据结构
Git学习笔记 创建仓库初始化 git init 克隆 git clone <repo> <dir> 12git clone git@github.com:User/Repogit clone git@github.com:User/Repo localDir 基本操作提交 git add:添加文件到暂存区。 git add .:添加所有文件。 git add file.txt g 2025-04-06 工具 #Git
GitHub Pages + Hexo网站搭建 准备工作需要做的环境配置: git node.js : 安装程序 注意配置好环境变量。node.js版本要尽量高,可以使用node --version命令查看版本号。 配置过程安装hexo框架1npm install -g hexo-cli 然后进入指定目录执行如下命令: 1234hexo init <folder># <floder>就是要存储网站资源的文件夹,这一步 2025-04-05 Web #Web #Hexo