- 博客(21)
- 收藏
- 关注
原创 暴力匹配vs KMP实测:nm到底差多少?附可运行源码+时间复杂度对比
本文系统介绍了字符串的数据结构与相关操作。首先定义了字符串的基本概念,包括串的表示方法、子串与主串的关系、空串与空格串的区别等。接着详细讲解了两种存储方式:顺序存储(包括定长顺序串和堆分配顺序串)和链式存储(单字符结点和多字符结点)。重点阐述了字符串基本操作的实现,如求子串、比较操作和定位操作,并提供了完整的代码示例。特别对比了堆串和定长顺序串的特点,强调了堆串内存管理的重要性。最后介绍了字符串模式匹配算法,包括朴素算法和KMP算法,分析了时间复杂度。全文通过理论讲解与代码实现相结合的方式,全面展示了字符串
2025-11-17 16:24:08
963
原创 队列别再只背 FIFO 了!从循环队列到链式实现,这篇文章一次讲透
队列 (Queue) 是只允许在一端进行插入,在另一端删除的线性表重要术语:队头,队尾,空队列先进先出(First In First Out),栈则是后进先出。
2025-11-11 08:54:23
965
原创 top++ 还是 ++top?一张图讲透栈的进/出栈指针细节,新手不再晕
本文介绍了栈的基本概念、实现方式和操作。主要内容包括:1.顺序栈的实现,详细讲解了初始化、判断栈空/满、入栈(Push)、出栈(Pop)和读取栈顶元素(GetTop)等操作的实现方法及注意事项;2.共享栈的概念,展示两个栈共享同一内存空间的实现;3.链式栈的实现,通过链表方式实现栈的基本操作。文章通过C++代码示例详细说明了每种栈结构的实现细节,包括指针操作、边界条件判断等关键点,并比较了顺序栈和链式栈的不同实现方式。
2025-11-08 10:35:07
710
原创 面试官:顺序表插入平均要挪几次?我推完公式他直接点头
本文介绍了顺序表的基本操作及时间复杂度分析。主要内容包括:1) 顺序表插入操作,通过for循环移动元素实现,时间复杂度最好O(1)、最坏O(n);2) 删除操作同样需要移动元素,时间复杂度与插入相同;3) 按位查找直接访问数组元素,时间复杂度O(1);4) 按值查找需要遍历比较,时间复杂度最好O(1)、最坏O(n)。文中通过代码示例展示了各操作的实现细节,并分析了不同情况下的时间复杂度,表明顺序表在随机访问时高效但在插入删除时效率较低。
2025-11-05 20:45:49
661
原创 告别前端焦虑!用 Streamlit 10 分钟把 Python 脚本变成可交互网页
Streamlit是一个让Python开发者快速构建交互式网页应用的开源框架。它通过简单的Python代码即可创建按钮、输入框、图表等UI组件,无需前端知识。本文介绍了Streamlit的核心优势、环境搭建、基础组件使用、实战案例(图片风格转换工具),以及布局优化、缓存加速、主题定制等进阶技巧。最后讲解了如何将应用部署到Streamlit Cloud等平台分享给他人。Streamlit特别适合快速原型开发、内部工具共享和个人项目展示,能显著提升Python开发者的生产力。
2025-09-28 22:30:11
1202
原创 当 AI 化身二次元画师:AnimeGAN2 深度解剖—— 从代码到魔法的全链路解密
本文深入解析了AnimeGAN2照片转动漫工具的技术实现,重点拆解了三个核心模块: animegan2_gui.py:负责用户交互的GUI界面,采用PyQt5实现多线程架构,支持拖放操作、主题切换等功能; model.py:基于深度学习的生成器模型,采用"编码器-转换器-解码器"架构,通过倒残差块高效实现风格迁移; anime_infer.py:协调推理流程,处理图片预处理、模型加载、后处理等环节。文章通过生动类比(如将模型比作"蛋糕师傅")和详细代码分析,揭示了AI
2025-09-28 18:07:41
811
原创 MySQL 函数知识点总结与代码示例
MySQL函数使用指南 本文系统介绍了MySQL函数的概念、分类及使用场景。主要内容包括:1.函数与存储过程的区别,函数适用于简单计算和值转换;2.五大类内置函数(字符串、数值、日期、聚合、条件函数)的语法及示例;3.自定义函数创建方法,包含百分比计算和随机验证码生成两个典型案例。文章通过具体SQL代码演示各类函数的实际应用,帮助开发者高效处理数据计算、格式化、分组统计等常见需求,提升SQL编写效率和代码复用性。
2025-08-27 12:00:24
985
1
原创 Java 基础知识点详解:从语法到实践(附代码案例)
本文系统介绍了Java编程基础,主要内容包括:1. Java语言特性与环境搭建:重点讲解跨平台性、面向对象等核心特性,以及JDK安装和IDEA配置方法。2. 基础语法:从HelloWorld程序入手,解析Java代码结构、编译运行流程。3. 数据类型与变量:详细说明8种基本数据类型及其使用规范。4. 运算符与流程控制:涵盖算术、比较、逻辑运算符,以及if-else、for、while等流程控制结构。5. 数组与方法:讲解数组的定义与操作,方法的定义调用及重载特性。文章强调实践建议,包括编写小程序、解决常见错
2025-08-27 11:48:38
1161
原创 在 DataGrip 中操作 MySQL 完整流程(从登录到数据查询)
本文档详细介绍了在DataGrip中操作MySQL数据库的完整流程,主要内容包括:1)MySQL服务器连接配置与登录;2)通过图形界面和SQL命令创建数据库;3)多用户管理及权限设置;4)数据库表的创建方法(支持可视化与SQL方式);5)CSV数据导入操作;6)数据查询的两种方式(可视化浏览与SQL命令);7)常见问题解决方案。文档提供逐步操作指引,适合不同熟练程度的用户使用DataGrip进行MySQL数据库管理。
2025-08-26 22:36:19
2386
原创 Windows 环境下 MySQL 入门实战:从安装到数据操作全流程
MySQL数据库安装与基础操作指南 本文详细介绍了Windows系统下MySQL 8.0的安装配置过程,包括下载安装包、图形化安装向导设置和环境变量配置等关键步骤。针对新手用户,文章从数据库基本概念入手,讲解了MySQL的层级结构(服务器→数据库→表→记录)和SQL语言分类。同时提供了两种操作方式:命令行操作(创建数据库、设计表结构、导入CSV数据)和Navicat图形化操作,并附有常见问题解决方案。特别强调了数据导入权限设置和中文编码问题处理,帮助初学者快速掌握MySQL基础操作技能。
2025-08-26 22:24:59
1416
原创 AI 开发利器大盘点:提升效率的实用工具全解析
本文介绍了AI开发流程中的五大核心工具:GitHub Copilot(智能代码生成)、Cursor(智能IDE)、Labelbox(数据标注)、Google Cloud AI Platform(模型训练部署)和Windsurf(项目管理)。这些工具分别针对编码、开发环境、数据准备、模型构建和团队协作等关键环节,通过自动化、智能化和可视化等功能显著提升开发效率。文章详细说明了各工具的核心功能、适用场景、使用体验及具体操作方法,为开发者构建高效AI开发工作流提供实用参考。开发者可根据项目需求、预算等因素灵活组合
2025-08-26 21:54:17
507
原创 Python 代码打包为 exe 全攻略:6 种主流方法原理 + 步骤 + 避坑指南
语法:pyinstaller -i 图标路径 脚本名对于复杂项目,建议编写setup.py配置文件,方便重复打包。# setup.pyimport sys# 要打包的脚本# 配置exe属性base = "Win32GUI" # Windows下GUI程序取消控制台base=base,icon="my_icon.ico", # 自定义图标target_name="my_gui_app.exe" # 输出exe文件名)]# 打包配置setup(
2025-08-26 21:42:27
5248
原创 Unity 新手入门:零基础也能看懂的核心知识点讲解
本文为Unity游戏开发新手提供入门指南,介绍了Unity的基本概念和核心功能。首先解释Unity作为跨平台游戏引擎的特点和应用场景,然后详细讲解五大核心界面:场景视图、游戏视图、层级视图、检查器视图和项目视图。接着阐述三大核心概念(游戏对象、组件和资源)的协作关系,并通过一个"点击移动2D方块"的实操案例演示基础开发流程。最后针对新手常见问题提供解决方案,并建议后续学习方向,包括物理系统、动画系统和UI系统等。文章强调多实践、查阅官方文档和论坛交流的重要性,帮助读者迈出游戏开发第一步。
2025-08-26 21:34:15
745
原创 基于 OpenCV Haar + MediaPipe 的人脸情绪检测
本文介绍了一个基于OpenCV Haar级联检测器和MediaPipe的人脸情绪检测系统实现方案。系统通过多库协同工作:OpenCV进行摄像头采集和基础人脸检测,MediaPipe提取468个面部关键点并精简为情绪识别相关特征,Pillow处理中文标签绘制。核心功能包括跨平台中文字体适配、人脸关键点几何特征计算(嘴巴开合度、眉毛倾斜度、眼睛睁开程度)以及基于多特征融合的简单情绪分类(自然、高兴、震惊、生气)。系统设计注重兼容性和可扩展性,通过坐标校验确保稳定性,同时保留升级为更复杂情绪识别模型的接口。程序提
2025-08-25 13:55:20
870
原创 AI Trainer(基于Mediapipe实现哑铃计数)
摘要:该Python程序基于OpenCV和MediaPipe实现哑铃弯举动作计数,通过21个3D关键点检测人体姿势,计算手臂角度变化判定动作完成度。系统支持摄像头/视频输入,具备实时FPS显示、计数重置、左右手切换等功能,采用角度阈值算法实现精确计数。核心包括姿势检测初始化、角度计算公式和智能计数逻辑,可扩展应用于深蹲、俯卧撑等多种健身动作监测。程序优化了视频处理和显示性能,提供键盘交互控制,为智能健身辅助提供技术解决方案。(150字)
2025-08-25 10:16:48
238
原创 基于 MediaPipe 的人脸 468 关键点检测:视频与摄像头实时实现
本文介绍了使用MediaPipe库实现人脸468个关键点检测的方法,支持视频文件处理和摄像头实时检测。核心内容包括:1)模型初始化配置;2)关键点可视化样式设置;3)单帧处理流程(格式转换、模型推理、结果绘制);4)视频文件处理实现;5)摄像头实时检测方案。重点解析了坐标转换、颜色空间转换和帧率计算等关键技术点,并列举了表情识别、美颜特效等应用场景。该方案可快速实现人脸关键点检测功能,便于二次开发。
2025-08-25 09:15:14
1096
原创 OCR 算法全解析:从技术原理到工业落地
OCR技术解析:从原理到应用 OCR(光学字符识别)技术通过计算机视觉和自然语言处理的结合,实现图像文本到数字文本的转换。其核心流程包括图像预处理、文本检测、文本识别和后处理四个关键环节: 图像预处理:通过灰度化、二值化等技术优化图像质量 文本检测:采用深度学习模型(如DBNet)准确定位文本区域 文本识别:借助CNN+Transformer架构实现字符序列转换 后处理:利用语言模型修正识别错误 当前主流算法已从传统方法演进到深度学习阶段,准确率显著提升。技术挑战包括复杂背景处理、手写体识别等,未来将向端到
2025-08-25 09:02:21
1508
原创 Deformable DETR 论文核心解读:面向端到端目标检测的可变形 Transformer
Deformable DETR:端到端目标检测的可变形Transformer 本文提出Deformable DETR,通过结合可变形卷积的稀疏空间采样和Transformer的关系建模能力,解决了DETR收敛慢和计算复杂度高的问题。核心创新是可变形注意力模块,仅关注参考点周围的少量采样位置,显著降低计算量(复杂度从O(N²)降至O(N))。实验表明,在COCO基准测试中,Deformable DETR以10倍于DETR的训练速度实现更优性能(尤其提升小目标检测AP达2.9%)。此外,通过迭代边界框优化和两阶
2025-08-25 08:54:43
964
原创 AI Virtual Painter(基于 OpenCV 和手势识别的虚拟绘画应用实现)
这个虚拟绘画应用展示了计算机视觉和手势识别的基本应用方法。通过本文介绍的技术,你可以进一步扩展功能:添加更多的画笔样式和粗细调节实现保存绘画作品的功能增加更多手势支持,如缩放、旋转等操作优化手部检测算法,提高在复杂背景下的识别精度通过这个项目,我们不仅学习了 OpenCV 的基本操作,还了解了手势识别在交互设计中的应用,为开发更复杂的计算机视觉应用打下了基础。
2025-08-24 22:51:47
652
原创 AI Virtual Mouse (使用Mediapipe实现虚拟鼠标控制)
摘要:使用MediaPipe框架结合Python和OpenCV实现手势控制鼠标功能。通过摄像头捕获手势,识别食指和拇指关键点坐标,映射到屏幕分辨率控制鼠标移动。当两指距离小于阈值时触发点击操作。需安装mediapipe、opencv-python和pyautogui库,代码包含手势检测、坐标映射和点击逻辑,可优化延迟并扩展多手势支持。(149字)
2025-08-24 17:34:46
450
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅