C++基本算法指南
文章平均质量分 94
基础算法笔记
SubtleByte
想做一些有趣的事!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【C++语法】C++11——新的类功能&&可变参数模版&&lambda表达式
本文主要介绍了C++11引入的几项重要特性: 新的类功能:包括移动构造和移动赋值函数,编译器在特定条件下会自动生成默认版本;新增default和delete关键字,用于显式控制默认函数的生成或禁用。 可变参数模板:允许函数和类模板接受可变数量的参数,介绍了递归函数和逗号表达式两种展开参数包的方法。 lambda表达式:一种匿名函数语法,基本结构为捕获列表mutable->返回类型{函数体},可简化函数对象的创建,特别适用于需要临时函数的场景。 这些特性增强了C++的表达能力,提高了代码的简洁性和灵活性原创 2025-10-01 10:52:41 · 894 阅读 · 0 评论 -
【C++基本算法】背包问题——完全背包
的完全背包问题相关的学习笔记。包含了多个题目,如完全背包模板、零钱兑换、零钱兑换Ⅱ、完全平方数等,每个题目都有老师代码、用户代码、以要点、思路和笔记。原创 2025-04-20 23:32:04 · 2314 阅读 · 0 评论 -
算法中的数论基础
本篇文章适用于算法考试或比赛之前的临场复习记忆,没有复杂公式推理,基本上是知识点以及函数模版,涵盖取模操作、位运算的小技巧、组合数、概率期望、进制转换、最大公约数、最小公倍数、唯一分解定理、素数、快速幂等知识点原创 2025-04-11 17:17:19 · 1434 阅读 · 0 评论 -
算法竞赛中常用的数据处理库函数
以下是算法竞赛(如蓝桥杯、牛客网)中常用的 **C++11 标准数学库函数**,按函数名分类整理,包含使用方式、头文件及功能说明原创 2025-04-10 22:58:55 · 397 阅读 · 0 评论 -
【算法:C++】LeetCode链表难题实录:这些细节处理让你少走弯路
通过系统掌握这些要点,链表问题将迎刃而解。建议配合画图工具反复练习指针操作,并注意内存管理细节,这些都是面试中的高频考点。原创 2025-04-08 21:17:47 · 789 阅读 · 0 评论 -
【算法:C++】模拟算法:从字符串替换到青蛙计数题目解析!
模拟算法--->照葫芦画瓢1. 模拟算法流程(一定要在演草纸上过一遍)2. 把流程转化为代码3. 找规律原创 2025-04-08 10:35:47 · 1171 阅读 · 0 评论 -
【算法:C++】回文子串与高精度计算:字符串问题的核心解法
字符串问题在算法面试和竞赛中极为常见,其核心在于考察对字符串操作的熟练度、经典算法的掌握程度以及逻辑思维的严密性。原创 2025-04-07 14:09:19 · 940 阅读 · 0 评论 -
【算法:C++】分治算法四连击:颜色分类与最小k个数的分治解法
分治算法通过“分解→解决→合并”的流程,将复杂问题化繁为简,适用于子问题独立且合并成本可控的场景。理解分治的核心思想后,可灵活应用于排序、搜索、数学计算等领域,是算法设计中不可或缺的重要策略。原创 2025-04-07 09:56:35 · 839 阅读 · 0 评论 -
【算法:C++】从零掌握位运算:十大经典问题详解
掌握这些技巧后,位运算问题将变得清晰简单!原创 2025-04-06 18:09:24 · 997 阅读 · 0 评论 -
【算法:C++】代码简洁,思路清晰!双数组DP问题模板化题目解析
双数组DP的核心在于灵活定义状态,通过分情况讨论推导转移方程,并利用初始化技巧简化逻辑。掌握经典模型(如LCS、编辑距离)可快速迁移到新问题。原创 2025-04-05 11:34:01 · 1043 阅读 · 0 评论 -
01背包问题的空间优化与边界处题目解析
01背包问题是经典的动态规划问题,旨在选择若干物品装入背包,使得总价值最大且不超过背包容量。每个物品只能选或不选(0或1),不可分割。原创 2025-04-04 20:20:56 · 1099 阅读 · 0 评论 -
哈希表+前缀和的组合拳:轻松解决子数组和问题
前缀和问题多用于来解决数组中连续子串求和问题,快速求出数组中某一个连续区间的和第一步:预处理出来一个前缀和数组(重点:递推公式)第二步:使用前缀和数组。原创 2025-04-03 13:35:15 · 868 阅读 · 0 评论 -
你以为会二分法就稳了?这些边界条件能坑哭你!
这个题最好再去看一下视频在排序数组中查找元素的第一个和最后一个位置public:// 处理边界情况// 1. ⼆分左端点// 判断是否有结果// 标记⼀下左端点// 2. ⼆分右端点老师思路:⽤的还是⼆分思想,就是根据数据的性质,在某种判断条件下将区间⼀分为⼆,然后舍去其中⼀个区间,然后再另⼀个区间内查找;⽅便叙述,⽤ x 表⽰该元素, resLeft 表⽰左边界, resRight 表⽰右边界。原创 2025-04-02 14:14:44 · 1049 阅读 · 0 评论 -
动态规划——路径问题
C++语法相关二维数组初始化cpp复制// 明确初始化值边界处理:通过虚拟节点简化代码,注意原始索引偏移溢出处理:用INT_MAX表示无效值,避免运算溢出算法思路相关状态定义方向正向:适用于无后效性问题(如路径计数)逆向:适用于后续路径影响当前决策(如地下城游戏)空间优化滚动数组:将二维DP压缩为一维反向填表:减少维度依赖通用模板1. 定义状态(含虚拟节点)2. 初始化边界3. 按顺序填表4. 处理特殊约束(障碍、最小值限制)5. 返回目标状态常见陷阱未处理起点或终点为障碍的情况。原创 2025-03-30 09:52:14 · 1157 阅读 · 0 评论 -
简单多状态dp问题:从打家劫舍到股票买卖
多状态 DP 适用于 每个决策点存在多种可能状态,且状态间存在依赖关系 的问题原创 2025-03-29 23:04:08 · 654 阅读 · 0 评论 -
动态规划入门:斐波那契模型四题详解(含空间优化技巧)
通过掌握这些技巧,能够高效解决斐波那契类动态规划问题,并在面试和竞赛中游刃有余。原创 2025-03-27 08:58:18 · 997 阅读 · 0 评论 -
滑动窗口:解决连续区间问题的黄金模板(练习笔记)
由于此问题分析的对象是「⼀段连续的区间」,因此可以考虑「滑动窗⼝」的思想来解决这道题。滑动窗口其实就是双指针的升级版,但此时这两个指针的移动方向是一致的原创 2025-03-24 09:12:12 · 821 阅读 · 0 评论 -
不会DFS?LeetCode Flood Fill七大题型详解+优化技巧
图像渲染+扫雷游戏+太平洋水流,一篇文章搞定所有变形!原创 2025-03-22 23:02:07 · 1016 阅读 · 0 评论 -
《双指针算法指南:LeetCode 经典题解(C++实现)》
— 从快慢指针到对撞指针,刷题效率提升 200%!常⻅的双指针有两种形式,⼀种是对撞指针,⼀种是左右指针。原创 2025-03-21 14:31:57 · 670 阅读 · 0 评论 -
二叉树深度优先搜索:从递归到剪枝六大高频题解析
:二叉树的深度优先搜索通过递归天然契合树的结构,核心在于选择合适遍历顺序(前序、中序、后序)并设计递归逻辑原创 2025-03-16 15:41:24 · 1353 阅读 · 0 评论 -
递归算法精讲:从汉诺塔到快速幂,五大经典问题深度解析
递归通过将问题分解为子问题,大幅简化代码逻辑。关键点在于明确递归函数定义、处理当前层逻辑、设计递归出口。原创 2025-03-15 22:42:46 · 917 阅读 · 0 评论 -
多源BFS实战:四大经典题目精讲,从矩阵到地图的全面解析
多源BFS通过巧妙初始化队列,将多起点问题转化为单次BFS遍历,兼具高效性和简洁性,是处理边权为一的多源最短路径问题的首选方案。原创 2025-03-12 15:15:34 · 749 阅读 · 0 评论 -
BFS最短路实战:迷宫、基因与单词的四大高频题深度解析
广度优先搜索(BFS)是一种解决(所有边的权重均为 1,路径长度由节点数量决定。)的高效算法,其核心思想是通过逐层遍历所有可能的路径,确保首次到达目标节点的路径即为最短路径。原创 2025-03-11 13:44:42 · 955 阅读 · 0 评论 -
BFS解决FloodFill问题的核心逻辑与代码实现(算法笔记)
BFS在FloodFill类问题中表现出色,核心在于队列管理和状态标记。通过合理选择去重策略,结合方向数组和边界检查,能高效解决图像渲染、岛屿计数、区域填充等问题。原创 2025-03-09 12:23:16 · 947 阅读 · 0 评论 -
堆与优先级队列的四大经典应用详解(算法笔记)
优先级队列(堆)通过高效的插入和删除操作(O(log n)),成为解决动态数据流、TopK 和中位数问题的核心工具。理解堆的底层逻辑与自定义比较规则,是优化代码性能和应对复杂场景的关键!原创 2025-03-08 13:00:55 · 743 阅读 · 0 评论 -
哈希表解决LeetCode问题的5种经典模式(算法笔记)
哈希表通过 O(1) 的查找与插入能力,成为解决快速匹配、频率统计、去重问题的核心工具。理解不同场景下的哈希表选择与优化策略(如数组替代、标准化键生成),是高效解题的关键!原创 2025-03-06 23:21:02 · 1026 阅读 · 0 评论 -
算法必备:层序遍历核心技巧与4道经典题目解析
通过队列+BFS解决二叉树问题的核心逻辑清晰、代码模板化,适用于大部分层序遍历场景。原创 2025-03-06 19:02:04 · 804 阅读 · 0 评论 -
栈的威力:LeetCode高频题深度解析,5大经典场景一网打尽!
栈的威力:LeetCode高频题深度解析,5大经典场景一网打尽!」(覆盖所有补充内容,突出栈的核心应用场景与高频题目解法!)原创 2025-03-05 16:05:28 · 1196 阅读 · 0 评论
分享