自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 收藏
  • 关注

原创 【剑指offer】搜索算法

本文介绍了五个算法问题的解法:1)使用二分查找统计数字在有序数组中的出现次数;2)在行列递增的二维数组中查找目标值;3)通过二分法寻找旋转数组的最小值;4)利用回溯算法生成字符串所有排列组合。每个问题都给出了对应的解题思路和C++代码实现,涉及二分查找、回溯、数组搜索等算法技巧。

2025-08-13 21:53:54 431 1

原创 【剑指offer】树

本文总结了二叉树相关的常见算法问题及解决方案,包括: 基本操作:计算深度、镜像转换、层序遍历、中序遍历等基础算法 搜索与路径: 二叉搜索树查找第k个节点 路径求和问题(三种变体) 最近公共祖先问题 特殊遍历: 之字形遍历 对称性判断 平衡二叉树判断 构造与转换: 根据前序和中序序列重建二叉树 二叉搜索树与双向链表转换 进阶问题: 子树判断 后序序列验证 节点后继查找 所有解法均采用递归或迭代方式实现,强调分治思想和遍历框架的应用,并注意处理边界条件。代码示例展示了如何利用二叉树特性高效解决问题。

2025-07-28 21:34:42 1303 1

原创 【音视频协议篇】WebRTC 快速入门

WebRTC是一项支持浏览器间实时音视频和数据通信的开源技术,基于开放标准运行,适用于所有现代浏览器和主流平台。WebRTC突破了传统通信限制,为开发者提供了强大的实时通信解决方案。在总结提供了《WebRTC权威指南》的下载

2025-07-26 17:55:02 1377

原创 【音视频协议篇】RTMP协议

本文系统介绍了RTMP协议的核心内容,详细解析了握手过程、连接建立步骤、消息类型(协议控制/数据/命令消息)以及块结构等。

2025-07-22 17:04:07 2680 9

原创 【音视频协议篇】RTSP系列

本文系统介绍了流媒体传输中的核心协议:RTSP、RTP、RTCP和SDP。RTSP作为应用层协议负责信令交互,RTP负责媒体数据传输,RTCP提供传输质量反馈。详细解析了推流/拉流流程、RTP数据包结构、H.264和AAC的打包方式、媒体同步机制(通过NTP和RTP时间戳)以及SDP协议的格式规范。SDP协议用于媒体协商,包含会话级和媒体级参数描述。文章通过协议交互时序、数据结构定义和同步原理,完整呈现了流媒体传输的技术框架,为音视频开发提供了理论基础。

2025-07-19 17:48:08 1338 8

原创 【FFmpeg 快速入门】本地播放器 项目

本文介绍了基于FFmpeg 7.1版本开发的本地音乐播放器项目。针对FFmpeg 7.x接口变化带来的学习困难,文章详细解析了播放器的整体架构、数据流向和关键模块设计。主要内容包括:1)播放器的三层处理流程(解复用、解码、渲染);2)线程安全的队列设计;3)音视频同步策略;4)音频输出模块的SDL实现;5)视频渲染与同步机制。该项目采用C++模板和面向对象设计,实现了资源的高效管理,并提供了完整的源码参考。通过学习该项目,开发者可以快速掌握FFmpeg 7.x的新特性和开发方法。

2025-07-17 14:06:02 1537 10

原创 Visual Studio 2022 上使用ffmpeg

摘要:本文介绍了在Visual Studio项目中配置FFmpeg库的步骤:1)在项目属性中添加FFmpeg的include目录;2)添加lib目录到附加库目录;3)在附加依赖项中输入8个FFmpeg库文件名;4)设置动态库环境变量路径;5)提供测试代码示例,通过调用avcodec_configuration()函数验证配置是否成功。配置过程涉及C/C++、链接器和调试等多个属性设置项。

2025-07-11 14:40:13 761

原创 【剑指offer】栈 & 队列

本文总结了5种栈和队列相关的算法实现:1) 用两个栈实现队列(JZ9),通过in栈进元素、out栈出元素;2) 包含min函数的栈(JZ30),使用辅助栈记录最小值;3) 判断栈的压入弹出序列(JZ31),通过模拟操作验证;4) 翻转单词序列(JZ73),利用栈后进先出特性;5) 滑动窗口最大值(JZ59),采用双端队列维护窗口最大值。这些算法都巧妙利用了数据结构的特性,通过辅助存储结构实现了高效的操作。

2025-07-09 10:04:36 461

原创 【剑指offer】链表 系列

本文分享了剑指offer系列链表题目的解题思路和代码实现。针对leetcode下架该系列题目的问题,作者通过购买牛客网实体书整理了这些题目的解题方案,包括从尾到头打印链表、反转链表、合并有序链表、查找公共节点等8个经典链表问题。每个题目都提供了简洁的递归或迭代解法,并附有C++代码实现。作者特别强调了解题的关键思路,如使用哈希表处理复杂链表复制、双指针技巧查找环入口等,帮助读者免费获取这些优质算法资源,避免购买实体书的麻烦。

2025-05-28 20:46:56 698 1

原创 【音视频开发】音视频基础概念

【音视频开发】音视频基础概念。本文系统介绍了音视频开发的基础知识,包括声音原理(声波三要素、人耳听觉范围)、音频数字化(采样/量化/编码)、常用音频编码格式(WAV/MP3/AAC/Ogg)及其特点。在图像方面,阐述了RGB/YUV色彩空间、像素表示方法及存储计算。视频编码部分重点讲解了IPB帧原理、DTS/PTS时间戳、GOP概念等压缩技术,并总结了帧率、分辨率、码率等核心参数。全文通过技术原理与实例计算相结合的方式,帮助读者构建音视频处理的基础知识体系,为后续开发实践奠定理论基础。

2025-05-25 16:31:13 1691 1

原创 【LeetCode 热题 100】二分查找 系列

【LeetCode 热题 100】二分查找 系列

2025-05-22 16:42:15 749 1

原创 【LeetCode 热题 100】动态规划 系列

【LeetCode 热题 100】动态规划 系列。

2025-05-16 20:45:57 1378 1

原创 【LeetCode 热题 100】二叉树 系列

【LeetCode 热题 100】二叉树 系列。

2025-05-08 16:16:53 1409

原创 【LeetCode 热题 100】链表 系列

【LeetCode 热题 100】链表 系列。

2025-04-26 16:58:01 1392 1

原创 【LeetCode 热题 100】双指针 系列

【LeetCode 热题 100】双指针 系列。

2025-04-19 22:17:20 674 1

原创 【LeetCode 热题 100】哈希 系列

【LeetCode 热题 100】哈希 系列。包含了3道题目,​1. 两数之和​;49. 字母异位词分组;128. 最长连续序列

2025-04-14 20:57:23 598 1

原创 【入门音视频】音视频基础知识

本期内容主要讲解音视频基础知识,包含了音视频是如何保存成文件,以及如何通过文件播放的,通过这个流程讲解音视频编解码,封装解封装相关的协议。

2025-02-24 21:41:36 1448 7

原创 探索B-树系列

本文将讲解B树系列,包含 B-树,B+树,B*树,其中主要讲解B树底层原理,为什么用B树作为外查询的数据结构,以及B-树插入操作并用代码实现;介绍B+树、B*树。

2025-02-10 21:52:37 1749 7

原创 【Linux杂货铺】线程安全

【Linux杂货铺】线程安全。本文旨在讲解什么是线程安全问题,以及什么是互斥锁,条件变量和信号量,它们是如何解决线程安全问题,以及它们的应用场景。

2024-12-01 20:49:52 1045 11

原创 深入浅出:Protobuf 的原理与实践

深入浅出:Protobuf 的原理与实践。如果你正在寻找一种更高效的数据格式,或者对Protobuf的实现和最佳实践感兴趣,那么本文将为你提供一站式的学习和参考。

2024-11-17 11:28:57 2007 20

原创 【Linux杂货铺】IO多路复用

【Linux杂货铺】IO多路复用。本期【Linux杂货铺】,主要讲解什么是IO多路复用,通过了解IO模式,了解为什么要有多路复用,以及其他的IO模型,学习多路复用的3中模型。

2024-11-10 22:48:56 2126 22

原创 【MySQL必知会】事务

【MySQL必知会】事务。本期【MySQL必知会】主要介绍MySQL中事务的概念,事务是据库管理系统中一个重要的概念,确保数据库操作可靠性的重要机制。

2024-10-07 22:55:42 1957 12

原创 【MySQL】索引

【MySQL】索引。本期【MySQL】讲解MySQL中索引的概念,什么是索引,为什么要有索引,以及MySQL如何做到和磁盘交互,使得数据持久化,还将会展示MySQL索引的相关操作。

2024-10-06 11:24:56 2145 8

原创 【MySQL】复合查询

【MySQL】复合查询。欢迎收看本期【MySQL】,本期内容将讲解MySQL中复合查询的内容,主要包括了笛卡尔积的概念,内外连接等概念,以及使用这些SQL语句。

2024-10-05 23:24:11 1377 8

原创 【MySQL】内置函数

【MySQL】内置函数。本期内容将介绍MySQL中的内置函数,其中包含了日期函数,字符串函数,数学函数以及其他的一些函数,从功能到使用等方面介绍这些函数。

2024-09-25 21:17:49 1594 19

原创 【MySQL】表的基本查询

【MySQL】表的基本查询,主要讲解关于表的内容的操作,包含了如何在表中插入数据,查找数据,删除以及更新表的内容,此外在查找数据时,还会介绍聚合函数以及group by子句的使用。

2024-09-21 10:18:39 2243 16

原创 【MySQL】表的约束

【MySQL】表的约束。本期主要讲解表的约束,包括什么是约束,有哪些约束,这些约束有什么作用等内容,掌握以上内容,你就可以基本掌握如何正确的创建表,以及确保表中数据的正确性和完整性。

2024-09-10 20:12:36 1656 3

原创 【Qt】信号和槽

【Qt】信号和槽。本期内容主要讲解Qt中重要概念——信号槽。信号槽是一种解决问题的方案,响应用户操作,处理问题。

2024-09-09 18:16:15 1736 12

原创 【MySQL】数据类型

【MySQL】数据类型。本期【MySQL】主要讲解MySQL中数据类型有哪些,主要讲解数值类型,时间类型,字符类型。

2024-09-08 15:44:50 1357 1

原创 【MySQL】数据库和表的操作

【MySQL】数据库和表的操作。本期【MySQL】内容主要讲解关于数据库和表的相关操作,包括增删查改等内容,才外拓展讲解关于字符集的有关内容。

2024-09-07 19:00:10 2081 15

原创 【MySQL】初识数据库

【MySQL】初识数据库。本期【MySQL】内容,主要带来数据库的基础知识,其中包含了什么数据库,主流数据库,MQL架构,存储引擎等内容。

2024-09-05 22:33:17 1660 17

原创 【C++杂货铺】海量数据处理(位图、布隆过滤器)

【C++杂货铺】海量数据处理(位图、布隆过滤器)。本期【C++杂货铺】,将介绍关于哈希表的扩展内容,即位图和布隆过滤器,以及如何通过位图和布隆过滤器解决海量数据处理问题。

2024-09-01 08:29:43 1468 20

原创 【网络世界】网络层

【网络世界】网络层。本期内容将讲解网络层的一些概念,例如IP地址是什么,IP协议格式,以及IP分段和组装,以及IPV4的危机,NAT技术等等。

2024-08-30 19:44:04 2978 12

原创 【网络世界】数据链路层

【网络世界】数据链路层。本期内容讲解TCP/IP协议栈中的数据链路层,包含了MAC地址,局域网通信,ARP协议等。

2024-08-05 20:14:03 1913 21

原创 【网络世界】传输层协议

【网络世界】传输层协议。本期内容讲解TCP/IP协议栈中的传输层协议,即UDP协议和TCP协议。包含了他们的协议格式,特点等。介绍他们的应用场景,最后对比TCP与UDP协议。此外,还将介绍套接字是如何工作的。

2024-08-01 08:44:59 3052 35

原创 【网络世界】HTTPS协议

【网络世界】HTTPS协议。本期将介绍应用层协议HTTPS的理论知识,通过了解HTTP缺陷,引入HTTPS是如何解决,以及在解决过程中遇到的问题,如何解决这些问题的。其中不乏一些有趣的知识,例如中间人攻击,CA机构,证书等。

2024-07-30 21:39:48 2715 36

原创 【网络世界】HTTP协议

【网络世界】HTTP协议。本文旨在研究学习HTTP协议的底层机制,协议格式中各个参数的含义,如何正确使用,此外通过HTTP协议学习Cookie和Session技术。

2024-07-27 21:53:13 2137 32

原创 【C++杂货铺】智能指针

本期【C++杂货铺】,主要讲解内存泄露的概念,如何避免内存泄漏,RAII是如何解决,引入智能指针对象,智能指针的三种类型,以及各自的优缺点,及其使用陷阱,此外,还将展示其底层实现。

2024-07-22 17:14:59 1636 33

原创 【网络世界】网络基础概念

本期【网络世界】介绍的是计算机网络基本概念,其中如目录所示的所有内容,包含了概念定义,网络通信的基本流程,此外还有介绍网络编程socket的API。此外,像一些比较重要的内容,例如TCP/IP协议集,IP地址,MAC地址,端口号,封装解封装分用的过程,是本期的主要内容。

2024-07-15 21:24:15 1632 3

原创 【C++杂货铺】C++11新特性

本期【C++杂货铺】介绍的是C++11新特性,其中如目录所示的所有内容,包含了概念定义,如何使用等方面,快速入手C++11带来的新内容。

2024-07-12 12:41:31 3982 33

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除