跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
重置
编程语言 / C++

标签

全部标签AIjavaNode.jsNuctPayPPT制作React NativeRNSaaSWeChat大前端算法

分类

全部分类
编程语言
PythonJavaScriptTypeScriptJavaKotlinGo / GolangRustC++CC#F#PHPRubySwiftObjective-CScalaClojureElixirErlangHaskellDartLuaPerlRJuliaMATLAB / OctaveSQLShell / BashPowerShellHTML / CSSZigNimCrystalGroovyVisual Basic .NETSolidity汇编

排序

最新更新最新发布最多浏览最多点赞
C++算法

C++ 设计模式概述及常用模式

概述了 C++ 中的 23 种设计模式,分为创建型、结构型和行为型三类。通过具体代码示例展示了单例、工厂、观察者等常用模式的实现细节,包括类定义、接口设计及关键方法。文章总结了必须掌握的核心模式及学习建议,旨在帮助开发者理解设计模式的应用场景,构建更灵活、可维护的软件系统。

未来可期发布于 2026/3/30更新于 2026/4/2115 浏览5 点赞约 33 分钟阅读
C++ 多线程同步之原子操作(atomic)实战
C++算法

C++ 多线程同步之原子操作(atomic)实战

C++11 标准库中 std::atomic 原子操作的使用方法和实战场景。文章对比了原子操作与互斥锁的区别,指出原子操作适用于单个变量的轻量级同步,具有无锁、高性能的特点。内容涵盖原子操作的核心特性、常用接口、内存序选择以及实战案例,包括线程退出控制和任务统计。同时总结了常见误区,如内存序影响和高竞争场景下的性能表现,帮助开发者根据场景选择合适的同步方案。

黑客帝国发布于 2026/3/30更新于 2026/4/2113 浏览2 点赞约 13 分钟阅读
数据结构:如何计算栈元素出栈时的不同排列个数
C++算法

数据结构:如何计算栈元素出栈时的不同排列个数

栈元素出栈排列数的计算方法,核心是卡塔兰数公式 T(n) = 1/(n+1) * C(2n, n)。通过组合数学推导得出结果,并提供了 C++ 代码实现及示例解析,适用于算法学习与数据结构理解。

心动瞬间发布于 2026/3/30更新于 2026/4/2112 浏览2 点赞约 7 分钟阅读
动态规划 01 背包问题详解与空间优化
C++算法

动态规划 01 背包问题详解与空间优化

动态规划中的 01 背包问题,包含基础解法与空间优化。首先定义状态 dp[i][j] 表示前 i 个物品在容量 j 下的最大价值,推导状态转移方程并分析初始化与遍历顺序。针对恰好装满的情况,通过设置无效值为 -1 进行区分。最后介绍滚动数组优化,将二维 DP 压缩为一维,并将内层循环改为逆序遍历以降低空间复杂度至 O(V)。提供了完整的 C++ 代码实现及注释。

DockerOne发布于 2026/3/30更新于 2026/4/2113 浏览3 点赞约 8 分钟阅读
动态规划:子数组与子串问题
C++算法

动态规划:子数组与子串问题

总结了八道经典的动态规划题目,涵盖最大子数组和、环形子数组最大和、乘积最大子数组、乘积为正数最长子数组长度、等差数列划分、最长湍流子数组、单词拆分及环绕字符串中唯一子字符串。通过状态定义、转移方程及初始化等步骤,详细解析了各类子数组与子串问题的解法与代码实现。

念念不忘发布于 2026/3/30更新于 2026/4/2115 浏览4 点赞约 33 分钟阅读
数据结构与算法:LeetCode 206. 反转链表
C++算法

数据结构与算法:LeetCode 206. 反转链表

LeetCode 206 题'反转链表'的两种解法。第一种是头插法,通过创建新链表并逐个节点插入头部实现,逻辑清晰但需额外空间;第二种是三指针法,原地修改指针指向,空间效率最优。文章详细分析了算法步骤、边界条件处理及复杂度,并对比了两种方法的优缺点,适用于不同场景下的链表操作需求。

漫步发布于 2026/3/30更新于 2026/4/2213 浏览3 点赞约 5 分钟阅读
C++ vector 深度剖析与模拟实现
C++算法

C++ vector 深度剖析与模拟实现

深入解析 C++ STL 中 vector 容器的底层实现原理。通过模拟实现 vector 类,详细阐述了核心指针(_start, _finish, _end_of_storage)的管理机制、动态扩容策略、迭代器设计以及常见操作如尾插、删除、插入的实现细节。文章还涵盖了拷贝构造与赋值重载中的深拷贝处理,并分析了迭代器失效的场景及解决方案,帮助读者理解动态数组的内存管理与泛型编程技巧。

ByteFlow发布于 2026/3/30更新于 2026/4/2213 浏览2 点赞约 14 分钟阅读
C++AI算法

VS2022 中 C++ 导入第三方库的方法与常见问题

在 Visual Studio 2022 中配置 C++ 项目以导入第三方库的方法。主要讲解了 VC++目录、C/C++标签页及链接器标签页的区别与配置,包括包含目录、库目录及附加依赖项的设置。通过引入 Eigen(纯头文件库)和 OpenGL(含头文件与库文件)两个实战案例,演示了如何正确设置路径以确保编译和运行成功,并解决了 DLL 放置等常见问题。

静心发布于 2026/3/30更新于 2026/4/2212 浏览4 点赞约 14 分钟阅读
从零构建 gRPC 跨语言通信:C++ 服务端与 C# 客户端
C++

从零构建 gRPC 跨语言通信:C++ 服务端与 C# 客户端

如何使用 gRPC 框架实现 C++ 服务端与 C# 客户端的跨语言通信。内容包括环境搭建(安装 protoc、gRPC 库、.NET SDK)、定义 proto 接口文件、生成代码、编写服务端逻辑与主程序、配置 C# 客户端及测试验证。文中还涵盖了常见问题排查与性能优化建议,提供了完整的编译运行步骤与流程总结表,帮助开发者快速构建高性能微服务通信系统。

草莓泡芙发布于 2026/3/30更新于 2026/4/2211 浏览2 点赞约 25 分钟阅读
基于红黑树封装实现 C++ map 与 set 容器详解
C++算法

基于红黑树封装实现 C++ map 与 set 容器详解

利用红黑树封装 C++ map 和 set 容器的底层实现。通过仿函数提取键值,统一红黑树接口。重点阐述了迭代器的中序遍历逻辑及 ++/-- 实现,解决了 Key 不可修改的 const 正确性问题。同时说明了 Insert 返回 pair 以支持 operator[] 及统计次数功能,并简述了析构函数的后序遍历处理。

虚拟内存发布于 2026/3/30更新于 2026/4/2211 浏览1 点赞约 15 分钟阅读
C/C++ 内存分布深度剖析:从代码区到堆栈,new/delete 与 malloc/free 详解
C++算法

C/C++ 内存分布深度剖析:从代码区到堆栈,new/delete 与 malloc/free 详解

深入剖析 C/C++ 程序内存分布,涵盖代码段、数据段、堆、栈等区域。对比了 C 语言 malloc/calloc/realloc/free 与 C++ new/delete 操作符的区别,详细讲解了 operator new/delete 底层实现、定位 new 表达式以及内存分配策略(如空闲链表、分箱)。旨在帮助开发者理解内存管理机制,避免泄漏与野指针,提升程序性能与稳定性。

二进制发布于 2026/3/30更新于 2026/4/2112 浏览2 点赞约 35 分钟阅读
C++算法

C++ 无锁链表实现与原理详解

基于 C++ std::atomic 和 CAS 原子操作实现的无锁单向链表。采用 Treiber 思想,通过头插法和头删法支持多线程并发操作,无需互斥锁。内容涵盖无锁概念、CAS 机制、ABA 问题说明及完整代码示例,包括节点定义、Push/Pop 实现及多线程测试主函数。适合学习高性能并发编程与内存模型。

SparkGeek发布于 2026/3/30更新于 2026/4/2218 浏览4 点赞约 13 分钟阅读
C++ AVL 树详解:概念、插入、旋转与实现
C++算法

C++ AVL 树详解:概念、插入、旋转与实现

C++ 中 AVL 树(平衡二叉搜索树)的原理与实现。涵盖 AVL 树定义、平衡因子计算、插入时的平衡调整策略,以及 LL、RR、LR、RL 四种旋转操作的详细图解与代码。包含验证方法、性能分析及完整 C++ 模板代码,适用于需要频繁查询且数据相对稳定的场景。

并发大师发布于 2026/3/30更新于 2026/4/2115 浏览2 点赞约 80 分钟阅读
C++ 轻量级搜索引擎实战:正/倒排索引设计与实现
C++算法

C++ 轻量级搜索引擎实战:正/倒排索引设计与实现

介绍基于 C++11 和 cppjieba 实现的轻量级搜索引擎核心模块。重点讲解正排索引(文档 ID 映射内容)与倒排索引(关键词映射文档列表)的数据结构设计。通过读取清洗后的文本数据,利用分词工具提取关键词并计算权重,构建索引关系。同时采用单例模式管理索引对象,确保线程安全。代码展示了从文件解析到索引建立的关键函数逻辑。

落日余晖发布于 2026/3/30更新于 2026/4/2012 浏览1 点赞约 11 分钟阅读
C++AI算法

C++ 引用折叠规则与模板推导应用详解

C++ 引用折叠是编译器在模板推导等场景下处理'引用的引用'的规则。核心原则是只要出现左值引用 &,结果即为 &;仅 && && 折叠为 &&。该机制发生在模板类型推导、auto、decltype 及 using/typedef 中,是实现万能引用和完美转发的基础。在 Eigen 及 SLAM 开发中,利用引用折叠配合 std::forward 可实现零拷贝传递表达式对象,显著提升性能。理解此规则有助于避免常见陷阱并编写高效模板代码。

黑客帝国发布于 2026/3/30更新于 2026/4/2112 浏览1 点赞约 17 分钟阅读
C++ 并发:内存序、可见性与指令重排
C++

C++ 并发:内存序、可见性与指令重排

探讨 C++ 并发编程中的内存模型核心概念。内容涵盖 CPU 缓存一致性、指令重排机制以及 C++11 内存模型下的 happens-before 关系。详细解析了 std::atomic 的不同 memory_order 语义(relaxed, acquire, release, seq_cst),并通过双重检查锁定等实战案例说明如何正确使用原子变量避免数据竞争。文章还介绍了性能考量、调试工具(如 TSan)及工程实践清单,旨在帮助开…

忘忧发布于 2026/3/30更新于 2026/4/2114 浏览2 点赞约 18 分钟阅读
扩展域并查集原理及经典题目解析
C++算法

扩展域并查集原理及经典题目解析

介绍扩展域并查集的概念,用于处理元素间存在多种关系(如朋友/敌人、捕食/被捕食)的场景。通过将每个元素拆分为多个域来维护不同状态下的关系。文中通过'团伙'和'食物链'两个经典 OJ 题目,详细讲解了如何构建 2n 或 3n 大小的数组,以及合并集合的具体逻辑,并提供了完整的 C++ 代码实现。

AiEngineer发布于 2026/3/30更新于 2026/4/2010 浏览2 点赞约 11 分钟阅读
双指针算法专题:移动零、复写零与快乐数
C++算法

双指针算法专题:移动零、复写零与快乐数

介绍双指针算法的两种常见形式:对撞指针与快慢指针。通过对撞指针解决移动零、复写零及盛水最多容器问题,强调原地操作与单调性优化;通过快慢指针解决快乐数问题,利用循环检测判断是否快乐。文章包含详细思路解析、可视化演示及 C++ 代码实现,涵盖 LeetCode 经典例题。

PhpPioneer发布于 2026/3/30更新于 2026/4/2111 浏览1 点赞约 15 分钟阅读
2019 年 CSP-S 提高组初赛真题解析:取石子游戏
C++算法

2019 年 CSP-S 提高组初赛真题解析:取石子游戏

解析了 2019 年 CSP-S 提高组初赛中的取石子游戏问题。题目描述了 Alice 和 Bob 进行的博弈过程,包含 n 条取石子规则及胜负判定条件。核心在于判断在给定规则下,先手玩家是否存在必胜策略。输入参数包括规则数量 n 和初始石子总数 m。

黑客帝国发布于 2026/3/30更新于 2026/4/2111 浏览3 点赞约 1 分钟阅读
C++ 游戏开发入门与进阶指南
C++AI算法

C++ 游戏开发入门与进阶指南

探讨 C++ 在游戏开发中的优势,涵盖高性能、面向对象编程及工具支持。内容包括入门路径(基础知识、引擎选择、实践)、核心技术(图形渲染、物理引擎、游戏逻辑与 AI)及 Unreal Engine 实战案例。同时分析 VR/AR、云游戏及 AI 未来趋势,助力开发者系统掌握 C++ 游戏开发技能。

岁月神偷发布于 2026/3/30更新于 2026/4/2210 浏览1 点赞约 22 分钟阅读
上一页下一页