自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 动态规划3——背包类动态规划详解

定义状态:明确dp数组的含义初始化状态:处理边界条件状态转移:根据问题类型选择合适的转移方程确定结果:找到最终状态对应的解。

2025-06-12 16:57:05 1

原创 动态规划2——路径动态规划

详细讲解了机器人走方格类的路径动态规划。

2025-06-12 16:45:10 76

原创 c++算法学习6——迪杰斯特拉算法

详细的讲解了地杰斯特拉算法的执行步骤与解题思想

2025-06-11 21:02:48 753

原创 动态规划1——线性动态规划

从线性动规的经典例题入手,由易到难的讲解线下动规的解题思路

2025-06-11 20:13:14 572

原创 c++算法学习6——记忆化搜索

记忆化搜索算法是为优化递归运算而产生的,因为简单的递归实现通常存在严重的效率问题。以斐波那契数列为例,计算fib(50)需要约1.5万亿次递归调用!这种使得简单递归在实际应用中几乎无法使用。记忆化搜索正是为了解决这个问题而诞生的优化技术。

2025-06-07 15:10:39 842

原创 C++中的排列组合算法详解

排列组合是计算机科学中的基础算法,广泛应用于密码学、数据分析、游戏开发等领域。在C++中,我们通常使用深度优先搜索(DFS)和回溯法来实现排列组合算法。本文将详细解析全排列、组合及其变种的实现原理和代码。

2025-06-07 14:49:47 554

原创 邻接表与邻接矩阵

特性邻接矩阵邻接表空间占用O(V^2)O(V + E)检查邻接O(1)遍历邻居O(V)添加边O(1)O(1)删除边O(1)添加顶点O(V^2)O(1)邻接矩阵适合稠密图和小规模图邻接表适合稀疏图和大规模图实际应用中常根据具体需求选择合适结构。

2025-06-06 16:19:56 939

原创 c++算法学习5——贪心算法

宝库内的贵金属有s个种类, 每种金属重量不同,分别为n1,n2,...,ns,同时每个种类的金属总的价值也不同,分别为v1,v2,...,vs。第3行有2s个正整数,分别为n1,v1,n2,v2,...,ns,vs分别为第一种,第二种,...,第s种金属的总重量和总价值(1≤ni≤10000,1≤vi≤10000)。给定口袋的承重上限w和s种金属,每种金属的总重量和总价值已知,金属可以分割并且价值与重量成正比。} else { // 如果当前金属的重量大于剩余容量,则将当前金属按比例放入背包。

2025-06-06 15:59:52 990

原创 c++算法学习4——广度搜索bfs

广度优先搜索是解决迷宫最短路径问题的经典算法,其核心在于:使用队列管理待访问位置逐层探索保证首次到达终点即是最短路径通过访问标记避免重复计算。

2025-06-05 16:49:51 899

原创 c++算法学习3——深度优先搜索

从起点出发,选择一个方向探索到底,直到无路可走:遇到死路时返回最近的分叉点尝试其他路径:记录已访问位置,避免重复访问。

2025-06-05 15:03:06 874

原创 c++数据结构10——map结构详解

map结构详解

2025-05-30 14:56:36 591

原创 c++数据结构9——set结构详解

set结构详解

2025-05-30 14:37:19 708

原创 c++数据结构8——二叉树的性质

深度为k的二叉树至多有2^k-1个节点这是对性质1的求和结果:例:示图1深度为4的二叉树最多有2^4-1=15个节点层节点数:指数级增长(性质1)叶-枝关系:叶子数总比二度节点多1(性质3)完全二叉树:高效存储的基础(数组表示)满二叉树:理想平衡状态实际应用:二叉堆(优先队列):基于完全二叉树哈夫曼编码:基于最优二叉树数据库索引:B/B+树的基础思考题在一棵完全二叉树中,编号为i和j的两个节点的最近公共祖先(LCA)编号如何计算?(提示:利用完全二叉树的编号性质,不断除以2比较)

2025-05-29 14:59:42 1425

原创 c++数据结构7——二叉树的遍历

/ 1. 遍历左子树。// 2. 遍历右子树。// 2. 遍历左子树。// 3. 遍历右子树。// 1. 遍历左子树。// 3. 遍历右子树。

2025-05-29 14:17:27 942

原创 c++数据结构6——树的基本概念

树结构的基本概念

2025-05-28 14:32:50 379

原创 c++数据结构5——优先队列

/ 默认大顶堆(降序)// 小顶堆// 默认大顶堆(降序)// 小顶堆(升序)// 病情严重程度// 重载<运算符,定义优先级规则(severity越大越优先)// 大顶堆// 定义比较规则:病情严重者优先(大顶堆)

2025-05-28 13:46:22 981

原创 c++数据结构4——链表结构详解

链表详解

2025-05-27 21:02:02 595

原创 c++数据结构2——队列结构详解

队列(Queue)是C++中重要的数据结构,遵循先进先出(FIFO)原则。

2025-05-27 19:47:10 1110

原创 C++数据结构1——栈结构详解

本文通过对栈的物理结构进行讲解引出了,STL中栈的用法

2025-03-15 21:26:42 1516

原创 C++算法学习2:二分算法精讲

在1~2的范围内找到一个x,使得式子5x2 -9x +1 的绝对值<10-9(即无限接近0) 要求:x精确到小数点后9位。换句话说也就是求:就是求方程 5x2- 9x + 1 =0 在1~2内的近似解1.2怎么找到这个x呢?我们需要一个一个试,关键是:试哪些数?先试边界1和2将1、2分别带入下列方程令y = 5x2 - 9x + 1 ,目标:|y| <10-9得到y=-3、y=3下一个试谁呢?将x=1.5带入y = 5x2 - 9x + 1。

2025-03-12 21:00:24 2218

原创 C++位运算:数据底层的二进制魔法

本文详细的介绍了c++中位运算的底层逻辑与实现

2025-03-11 21:21:12 942

原创 C++时间复杂度详解

本文详细的介绍了时间复杂度的概念与常见类型

2025-03-10 20:16:12 1886

原创 C++枚举算法详解

介绍了枚举算法的概念与实现

2025-03-09 14:58:24 1233

原创 C++高精度算法详解:实现超大整数运算

本文主要讲解了c++中高精度的各种写法

2025-03-09 14:33:41 1237

原创 C++排序:sort函数的应用

sort排序的使用与结构体中sort排序的应用

2025-03-06 16:44:54 529

原创 C++基础语法10——结构体

本文系统讲解C++结构体的定义与使用,通过成绩管理系统实例演示如何聚合不同数据类型,详解结构体声明、初始化及数组操作,并提供三科成绩统计实战方案。

2025-03-06 15:49:26 704

原创 函数的特殊形式——递归

以故事的形式,以简单易理解的形式讲述了递归的执行流程

2025-03-05 10:28:04 683

原创 函数的特殊形式——递归函数

递归是指。

2025-03-03 21:58:58 315

原创 C++中的“结界”机制:作用域与变量可见性探秘

自佛学的结界概念,在C++中体现为作用域机制。程序中的每个函数都会形成独立的作用域屏障,如同魔法结界般保护内部变量,使其与外界的同名变量互不干扰。这种机制保证了代码模块的独立性和安全性,但当存在特殊力量(全局变量、预定义常量)时,这种屏障也可能被突破。

2025-03-02 19:04:12 488

原创 C++基础语法9——函数结构

本文系统讲解C++函数的分类与应用,对比库函数与自定义函数,以质数判断函数isPrime为例,详解参数、返回值及设计原则,以及高效函数设计技巧。

2025-03-02 16:58:27 836

原创 c++基础语法8——字符处理

本文系统对比C++字符数组与string类特性,详解字符数组的静态内存管理、'\0'终止符机制及string的动态扩展优势,剖析cin、getline等输入方式差异,提供类型转换技巧与越界防范策略,指导开发者根据场景选择高效安全的字符处理方案。

2025-03-01 16:48:55 2119

原创 C++基础语法7——二维数组

本文通过楼房模型类比,系统讲解C++二维数组的声明、内存布局及矩阵操作,涵盖行优先存储、越界防护、动态内存管理等核心知识,结合游戏地图、成绩系统等典型应用,帮助开发者掌握多维数据处理技巧。

2025-03-01 15:38:18 1210

原创 C++数组综合训练:插入删除/进制转换/排序算法

插入删除/进制转换/排序算法

2025-02-28 20:30:38 875

原创 C++基础语法6 —— 一维数组

数组是处理批量同类型数据的高效工具声明时必须明确数组大小(下标访问从0开始,严防越界初始化方式决定内存状态:未初始化:随机值部分初始化:剩余补0数组名本质是内存首地址。

2025-02-28 16:15:31 557

原创 C++ 循环结构练习题目集

本系列题目涵盖基础算法与数学应用,包括统计特殊余数、区间质数统计、分解质因数、回文质数检测、可逆质数筛选、最大公约数(枚举法与辗转相除法)、地板铺设方案优化及三角函数约分。通过输入输出样例演示代码逻辑,涉及循环控制、模运算、质数判断、数字反转、公约数求解等核心知识点,适合编程初学者练习基础算法与数学建模能力。

2025-02-28 13:21:58 1097

原创 循环的基础练习

c++语法关于循环的基础练习

2025-02-27 21:16:39 294

原创 C++基础语法5——循环结构

"编程中的循环如同莫比乌斯环——在有限的代码行间创造无限逻辑,又在看似无限的循环中严守系统边界。" —— 致每一位C++学习者。通过将纸带扭转180°形成一个无始无终的曲面,象征着永恒循环。

2025-02-27 19:12:21 423

原创 条件判断语句的练习

case 可能的取值1 : //case后的值各不相同,会执行不同的语句。班费购买单价为4、5、6元的笔,要求优先买最多的4元笔,剩余金额用5/6元补齐。// 用1支5元和1支6元替换2支4元;// 用1支5元笔替换1支4元笔;// 用1支6元笔替换1支4元笔;cout << year << "是闰年" << endl。cout << year << "是平年" << endl。cout << year << "是闰年" << endl。// 最多4元笔数量。cout << "30天";

2025-02-27 16:25:24 861

原创 C++基础语法4——条件判断语句

条件判断语句:计算机的“判断”本质是条件执行:通过关系运算符比较数据,用条件语句(if-else)决定代码的执行路径。

2025-02-27 15:58:26 1044

原创 C++基础语法3——字符变量

讲解了 C++ 中字符与 ASCII 码的关系,介绍了字符常量的定义、字符变量的输入输出方法以及字符运算的本质。

2025-02-25 21:57:59 794

初始c++,c++的输入,输出练习

初始c++,c++的输入,输出练习

2022-07-28

空空如也

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

TA关注的人

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