
滑动窗口算法实战:从最大连续 1 到最小覆盖子串
滑动窗口算法通过维护动态区间高效解决字符串与数组的子序列问题。本文结合四个经典 LeetCode 例题,演示如何利用双指针优化暴力枚举。涵盖最大连续 1 的个数、字母异位词查找、单词串联子串及最小覆盖子串等场景。重点讲解如何定义进出窗口条件、维护计数变量以及处理边界情况,提供完整的 Java 实现代码与复杂度分析,帮助读者掌握滑动窗口的核心思维模式。
博客作者
用刀狂人
323
已发布文章
11K
博客获赞
795K
博客浏览
第 9 页

滑动窗口算法通过维护动态区间高效解决字符串与数组的子序列问题。本文结合四个经典 LeetCode 例题,演示如何利用双指针优化暴力枚举。涵盖最大连续 1 的个数、字母异位词查找、单词串联子串及最小覆盖子串等场景。重点讲解如何定义进出窗口条件、维护计数变量以及处理边界情况,提供完整的 Java 实现代码与复杂度分析,帮助读者掌握滑动窗口的核心思维模式。

使用 Cursor 开发 Web 背单词应用的全流程实战记录。涵盖需求文档生成、前后端 UI 设计、Flask 后端搭建、数据库交互及 Bug 修复。重点展示如何利用 AI 工具快速构建项目结构、解决环境依赖冲突以及调试业务逻辑,为开发者提供一套高效的 AI 编程工作流参考。
利用 OpenClaw、Claude 和 Obsidian 构建自动化写作系统,整合 Twitter、GitHub 及公众号数据源实现信息自动抓取与分类。系统每日生成日报并归档至知识库,辅助 AI 完成初稿撰写与多平台发布。该工作流将写作从体力劳动转变为决策型工作,显著减少信息焦虑并提升输出稳定性。核心在于优化流程而非单点工具使用,适合需要持续内容输出的创作…
PythonOCC 的基础教程,涵盖环境配置、基础形状创建、布尔运算与几何变换、数据交换(STEP/IGES)以及 PyQt5 图形界面开发。内容包含详细的代码示例,展示了如何使用 PythonOCC 进行三维建模、文件读写及简单的 CAD 应用开发。

插入排序的基本思想、具体步骤及 Java 代码实现。插入排序通过构建有序序列,将未排序数据在已排序序列中从后向前扫描并插入。算法稳定性好,空间复杂度为 O(1),平均和最坏时间复杂度为 O(n^2),最优为 O(n)。适用于少量元素排序场景。

堆这种数据结构的基本概念,包括大堆与小堆的定义及特点。文章详细阐述了使用数组实现小堆的思路,涵盖初始化、销毁、插入(入堆)、删除(出堆)、获取堆顶等核心操作,并提供了完整的 C 语言代码示例,帮助读者理解堆的调整算法及内存管理。

HarmonyOS ArkTS 提供了 foregroundBlurStyle 属性用于实现组件前景内容的模糊效果,支持四种强度等级及主题色自适应。本文详解参数配置与本地资源引用方式,配合 DevEco Studio API 10+ 环境即可完成集成,适用于构建具有视觉层次感的界面。
Ubuntu 24.04.3 LTS 环境下安装 Git 并完成 GitHub 连接的完整指南。内容包括系统软件源更新、Git 基础配置(用户名与邮箱)、SSH 密钥对生成及公钥添加步骤,同时提供 HTTPS 凭证缓存方案作为备选。文中还包含连接验证命令、代码克隆推送测试流程,以及常见权限拒绝或网络错误的排查方法,确保开发环境稳定可用。
如何使用 Python 和 PyQt6 库从零开始开发一个简易记事本应用。内容涵盖主窗口创建、文本编辑器集成、菜单栏设计、文件读写操作(打开/保存)、字数统计功能以及面向对象的结构封装。通过分步讲解核心代码逻辑,帮助开发者理解 PyQt 事件循环、信号槽机制及界面布局方法,最终提供一个完整的可运行示例代码。

深入解析 C++ STL 中 Vector 在经典算法题中的应用。涵盖按位异或解决单一数字查找问题、二维 Vector 构建杨辉三角、递归实现电话号码字母组合、利用 unique 加 erase 进行整型去重,以及针对多个数字出现特定次数的位运算优化方案。文章提供详细原理讲解与完整代码示例,帮助开发者掌握 Vector 底层机制及性能优化技巧。
详细讲解了使用 C++ 和 EasyX 图形库开发火柴人跑酷游戏的完整流程。从基础窗口搭建开始,逐步实现角色动画、资源加载、输入控制、障碍物生成与移动、碰撞检测及计分系统。教程分为十二个阶段,涵盖双缓冲防闪烁、定时器控制帧率、随机障碍物生成、难度递增等核心功能,最终提供带注释的完整可运行代码,适合初学者学习游戏开发基础逻辑。

如何利用 OpenClaw 结合 cpolar 实现本地 AI 智能体的远程访问。通过内网穿透技术,无需公网 IP 即可让局域网内的 OpenClaw 服务对外可用。教程涵盖了 cpolar 的安装配置、OpenClaw 对接 AI 模型接口的步骤,以及三个实际应用场景:远程访问 NAS 电影、分享本地运行的网页游戏、以及通过远程桌面控制家庭电脑。整个过程无…

Milvus 向量数据库配合 Attu 可视化工具可大幅降低运维门槛。 Attu 在 Windows、macOS、Linux 及 Docker 环境下的部署步骤,并演示 PyMilvus SDK 的连接、数据库管理及集合创建流程。重点涵盖静态与动态 Schema 的字段定义差异,以及分片参数对分布式扩展的影响,适合希望快速上手 Milvus 进行 RAG 系…

C++ 的发展历史、版本更新及参考文档,阐述了 C++ 在服务器、游戏、嵌入式等领域的应用。详细讲解了 C++ 的基础语法,包括命名空间的作用与使用、输入输出流、缺省参数、函数重载、引用的概念与特性、内联函数以及 nullptr 的使用。文章通过代码示例演示了栈、队列等数据结构的实现,帮助读者理解 C++ 的核心机制。
VS Code 远程 SSH 开发中,Copilot 调用 Claude 模型常因代理配置不当导致工作区识别错误或连接失败。常见误区是将扩展强制设为本地运行,致使远程路径无法被正确识别。解决方案是移除扩展的本地限制,并在远程环境中配置网络代理,确保扩展在远程上下文运行且能访问外部服务。
SketchUp STL 插件的安装配置、核心功能及实战应用。内容包括插件安装步骤、个性化礼品定制与产品原型验证流程、STL 格式导出与导入的操作详解、模型质量优化技巧以及常用工具链整合建议。此外还涵盖了教育场景的应用方案及安装使用中的注意事项,旨在帮助用户利用该插件实现从数字设计到 3D 打印的物理转化。

Diffusion Transformer (DiT) 通过将扩散模型中的 U-Net 骨干替换为视觉 Transformer (ViT),显著提升了模型的扩展性与性能。深入解析了 DiT 的核心架构、三种条件策略及其在视频生成领域的改造方案,如引入时间注意力机制。此外,重点介绍了清华大学提出的 PAD 框架,该框架利用 DiT 实现图像预测与机器人动作的联…
介绍 Adoptium Temurin JDK 的下载与安装流程。涵盖 Windows、macOS 及 Linux 系统下的版本选择、包格式推荐及镜像加速方案。提供环境变量配置、Homebrew 安装命令及版本验证方法,帮助用户快速部署稳定的 OpenJDK 环境。
Lunar Python 是一个基于 Python 标准库开发的轻量级农历处理工具库。它支持公历、农历、佛历和道历四种历法系统的转换与计算。核心功能包括基础日期转换、节气查询、传统节日识别以及干支纪年等。该库无需额外依赖,兼容 Python 3.6 及以上版本。通过 HolidayUtil 工具可辅助企业考勤系统开发,同时提供八字分析等高级功能。适合日历应用…
介绍基于 Java 技术栈的社区跑腿家政上门服务商城解决方案。系统采用 Spring Cloud Alibaba 微服务架构,整合跑腿代办、家政服务等功能。核心模块包括用户端、服务人员端及运营管理端,支持服务预约、订单跟踪、智能派单及动态定价。技术选型涵盖 Nacos、Sentinel、Redis、Elasticsearch 等。通过 LBS 定位与多维度匹…