文章归档

21 / 21 篇文章

2026

21 篇沿途的记录

10月 OCTOBER

  1. Python 开发

    FastAPI基础入门

    本文介绍 FastAPI 的基础使用,从创建项目、启动服务和路由注册开始,逐步讲解路径参数、查询参数、请求体、数据校验、响应类型、响应模型及异常处理。通过实际代码示例和交互式文档演示,了解如何使用 FastAPI 编写简单的 Web API,并掌握接口开发中的常见操作。

    15 分钟阅读

06月 JUNE

  1. 算法专题

    leetcode双指针经典练习题

    通过 LeetCode 80、88、977 三道题,继续记录双指针算法的应用。从有序数组去重入手,比较不同的快慢指针写法,再利用倒序填充解决原地合并数组和有序数组平方的问题,附 Python 实现。

    5 分钟阅读

05月 MAY

  1. 算法题解

    leetcode-1438. 绝对差不超过限制的最长连续子数组

    记录 LeetCode 1438「绝对差不超过限制的最长连续子数组」的解题思路。在滑动窗口中使用两个单调队列,分别维护最大值和最小值,当差值超过 limit 时不断收缩窗口,将整体时间复杂度优化到 O(n),并与 LeetCode 239 的定长窗口进行对比。

    5 分钟阅读
  2. 算法题解

    leetcode-179. 最大数

    记录 LeetCode 179「最大数」的解题思路。从普通数值排序和字典序排序的局限出发,通过比较两个数字不同拼接顺序的大小,推导出自定义排序规则,并使用 Python 的 cmp_to_key 实现排序,最后处理全零的特殊情况。

    4 分钟阅读
  3. 算法题解

    leetcode-239. 滑动窗口最大值

    记录 LeetCode 239「滑动窗口最大值」的解题思路。利用单调队列维护窗口最大值,通过队尾删除较小元素、队头移除过期索引,避免重复遍历窗口,将时间复杂度优化到 O(n),附 Python 实现。

    3 分钟阅读
  4. 算法题解

    leetcode-136. 只出现一次的数字

    记录 LeetCode 136「只出现一次的数字」的解题过程。从哈希表统计出现次数入手,再利用异或运算的性质,让成对出现的数字相互抵消,将额外空间复杂度从 O(n) 优化到 O(1),附 Python 实现。

    3 分钟阅读
  5. 算法专题

    leetcode动态规划基础练习题

    通过 LeetCode 509「斐波那契数」和 322「零钱兑换」两道题,记录动态规划的基本思路。从朴素递归出发,利用备忘录解决重复计算问题,再改为自底向上的迭代实现,理解状态定义、状态转移和空间优化,附 Python 代码。

    7 分钟阅读
  6. 算法专题

    leetcode二叉树基础练习题

    通过 LeetCode 104、144、543 三道二叉树题目,记录递归的两种常见思路:分解子问题与遍历整棵树。从最大深度的两种实现出发,进一步理解前序遍历、后序位置汇总子树信息,以及如何利用左右子树深度计算二叉树直径,附 Python 实现。

    8 分钟阅读
  7. 算法专题

    leetcode数组双指针练习题

    整理双指针算法的常见用法,通过七道 LeetCode 题目,记录快慢指针在数组去重、链表去重和元素移动中的应用,以及左右指针求两数之和、反转字符串和中心扩散寻找最长回文子串的解题思路,附 Python 实现。

    6 分钟阅读
  8. 算法专题

    leetcode滑动窗口练习题

    整理滑动窗口的基本思路与通用代码框架,并通过 LeetCode 76、567、438、3 四道经典题,记录可变窗口与定长窗口的不同应用,重点理解窗口状态维护、左右指针的移动条件以及答案的更新时机。

    8 分钟阅读
  9. 算法专题

    leetcode链表双指针练习题

    整理链表合并、分隔、倒数节点、中点、环与交点问题,记录虚拟头节点、快慢指针和最小堆各自解决什么问题。

    6 分钟阅读

04月 APRIL

  1. 算法题解

    洛谷-P1029 [NOIP 2001 普及组] 最大公约数和最小公倍数问题

    记录洛谷 P1029「最大公约数和最小公倍数问题」的解题过程。从双层暴力枚举超时出发,利用最大公约数与最小公倍数的乘积关系,根据一个数直接求出另一个数,将双层枚举优化为单层枚举,附 Python 和 C++ 实现。

    4 分钟阅读
  2. 算法题解

    leetcode-1979. 找出数组的最大公约数

    记录 LeetCode 1979「找出数组的最大公约数」的解题思路。通过排序获取数组中的最大值和最小值,再调用 GCD 函数计算最大公约数,附 Python 和 C++ 实现。

    2 分钟阅读
  3. 算法题解

    洛谷-B3634 最大公约数和最小公倍数

    记录洛谷 B3634「最大公约数和最小公倍数」的解题过程。通过具体例子理解辗转相除法,并利用最大公约数与最小公倍数的关系求解,分别使用 Python 循环和 C++ 递归实现。

    4 分钟阅读
  4. 算法题解

    洛谷-P10424 [蓝桥杯 2024 省 B] 好数

    记录洛谷 P10424「好数」的解题过程。通过枚举 1 到 N 的所有整数,按照从个位到高位的顺序检查数位奇偶性,分别使用 C++ 字符串反转和 Python 取模、整除实现,并记录 Python 与 PyPy3 的提交情况。

    5 分钟阅读
  5. 算法题解

    洛谷-P8716 [蓝桥杯 2020 省 AB2] 回文日期

    记录洛谷 P8716「回文日期」的解题过程。从直接枚举日期超时的问题出发,利用回文数的对称性,通过反转年份构造回文候选,再结合日期合法性和闰年判断,寻找下一个普通回文日期及 ABABBABA 型日期,附 Python 和 C++ 实现。

    5 分钟阅读
  6. 自动化脚本

    Dr.com校园网自动登录方案

    记录使用 Python 实现 Dr.COM 校园网自动登录的方法。通过浏览器开发者工具获取认证 URL,结合 TCP 连通性检测和 HTTP 204 检测判断网络状态,在连接异常时尝试重新认证,并介绍 Windows 登录后自动启动的配置方法。

    6 分钟阅读
  7. 算法题解

    leetcode-2226. 每个小孩最多能分到多少糖果

    记录 LeetCode 2226「每个小孩最多能分到多少糖果」的解题思路。从样例分析入手,利用糖果分配数量的单调性,通过二分查找确定第一个不可行的答案,再减一得到最大可行值,附 Python 和 C++ 实现。

    5 分钟阅读
  8. 算法题解

    leetcode-2563. 统计公平数对的数目

    记录 LeetCode 2563「统计公平数对的数目」的解题思路。通过排序和不等式变形,将数对统计转化为有序数组中的区间查找,再利用二分查找确定边界,将时间复杂度优化到 O(n log n),附 Python 和 C++ 实现。

    2 分钟阅读
  9. 算法题解

    leetcode-1.两数之和

    记录 LeetCode 1「两数之和」的解题思路。从双重循环暴力枚举出发,通过 target - x 确定需要查找的元素,再利用哈希表将平均时间复杂度从 O(n²) 优化到 O(n),附 Python 和 C++ 实现。

    3 分钟阅读
  10. 算法题解

    洛谷-P8218 【深进1.例1】求区间和

    记录洛谷 P8218「求区间和」的解题过程。从最直接的循环累加出发,分析重复查询带来的时间开销,再利用前缀和将单次区间查询优化到 O(1),并附上 Python 和 C++ 两种实现。

    2 分钟阅读

故事从这里开始,下一页还在继续。

搜索文章

输入关键词搜索文章。

↑ ↓ 选择文章,Enter 打开Esc 关闭