基础算法
文章平均质量分 95
breeze_phantom
最近很忙,没时间,【所有文章全部免费开放,只为便利】
minecraft账号:清风乄无念 洛谷账号:breeze_of_phantom
编程2023信息素养大赛国赛二等奖、2023NOC国赛二等奖、2024信息素养大赛国赛优秀奖
欢迎一起讨论c++有关问题~~~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
贪心算法(基础算法)
本文介绍了贪心算法的基本概念和应用。贪心算法通过在每一步选择局部最优解来解决问题,具有无后效性特点。文章通过购物省钱、排队接水、课程选择等生动例子,结合代码实现(如C++的sort排序),展示了贪心策略的具体应用。习题部分包含导弹拦截、智力大冲浪等经典问题,帮助巩固算法理解。最后指出贪心算法是解决最优化问题的重要方法,为后续学习动态规划奠定基础。全文采用幽默风趣的语言和丰富实例,使抽象的算法概念更易理解。原创 2025-07-21 16:38:06 · 1399 阅读 · 7 评论 -
广度优先搜索算法2(基础算法)
本文介绍了普通广度优先搜索(BFS)的基本框架和应用。首先对比了棋盘BFS与普通BFS的区别,给出了标准BFS的代码框架。随后通过三个经典例题进行实战演练:"奇怪的电梯"问题展示了基础BFS应用;"抓住那头牛"问题演示了多种移动方式的处理;"青蛙跳木桩"问题则体现了BFS求最短路径的特性。每个例题都包含详细的分析和完整的代码实现。最后提供了两道练习题(最小移动步数和质数转换),帮助读者巩固所学内容。文章采用轻松幽默的语言风格讲解算法知识,适合初学者原创 2025-07-04 16:22:46 · 1062 阅读 · 0 评论 -
广度优先搜索算法1(基础算法)(棋盘篇)
本文介绍了广度优先搜索(BFS)算法的原理和应用。BFS通过逐层遍历节点来解决问题,适用于寻找最短路径等场景。文章首先讲解BFS的基本框架,包括队列的使用和标记数组的设置。然后通过三个例题演示BFS的实际应用:马的遍历(二维棋盘)、临冬城宝藏(三维迷宫)和乳草的入侵(八方向扩散)。最后提供两道难度较高的习题供读者练习。文章强调要根据问题特点选择合适的搜索算法,并指出BFS在寻找最优解时的优势。代码示例采用C++实现,包含幽默风趣的注释,适合算法初学者学习。原创 2025-07-02 20:20:12 · 942 阅读 · 0 评论 -
搜索与回溯算法(基础算法)
本文介绍了搜索与回溯算法的基础知识及应用。首先通过素数环、自然数拆分、N皇后问题等经典例题,详细讲解回溯算法的实现框架和减枝优化技巧。文章包含具体代码实现,如素数环问题中判断相邻数之和为质数的解法、N皇后问题的行列斜线判断等。此外还提供了两个课后练习题目:字母矩阵收集和迷宫路径查找,帮助读者巩固回溯算法在路径搜索问题中的应用。最后总结回溯算法在解决最优解或单解问题中的优势,并预告下一章将讲解广度优先搜索算法。全文以幽默风趣的语言和丰富实例,帮助读者掌握这一重要基础算法。原创 2025-07-01 13:12:44 · 934 阅读 · 0 评论 -
递归算法(基础算法)
这篇文章介绍了递归算法的概念和应用,通过多个例题讲解递归的实现方法。主要内容包括: 递归概念:函数自调用,需满足累加问题、递归条件和边界三个条件 例题解析: 计算1到n的和 二分查找 汉诺塔问题 斐波那契数列 集合划分 数的计数 习题练习:爬楼梯、幂次方表示、因子分解 强调递归算法的重要性,建议读者深入学习 文章采用幽默风趣的语言,通过代码示例展示递归实现,适合算法初学者理解递归的基本原理和应用场景。原创 2025-05-18 21:56:21 · 1096 阅读 · 0 评论 -
记忆化搜索
本文沙雕地介绍了记忆化搜索在递归算法中的应用,通过五个典型例题展示了如何优化递归效率。作者首先以斐波那契数列为例,演示了如何通过数组存储中间结果避免重复计算;随后通过递推函数、3n+1猜想等问题,讲解了处理大数运算和数组越界的技巧;最后以滑雪问题为例,展示了二维记忆化搜索的实现方法。文章采用轻松幽默的语言风格,穿插"小明"的互动环节,在讲解技术要点的同时,也分享了实际编程中遇到的错误和调试经验。每个案例都提供了完整代码和详细注释,适合递归算法初学者学习记忆化搜索的优化技巧。原创 2025-01-24 16:09:24 · 877 阅读 · 0 评论 -
递推算法(基础算法)
本文介绍了递推算法的基本概念与应用。递推算法通过找到前后过程的递推关系,将复杂问题分解为简单重复运算,适合计算机处理。文章通过数塔问题、斐波那契数列、骨牌铺法等例题,详细讲解了递推式的建立与求解方法,并提供了对应的C++参考程序。此外,还介绍了汉诺塔、平面分割、Catalan数等典型递推问题,分析了其递推关系和边界条件。作为竞赛重要考点,递推算法需要掌握从简单案例推导一般规律的能力,建议读者通过练习加深理解。原创 2024-10-25 21:09:49 · 1156 阅读 · 0 评论 -
数据排序(基础算法)
摘要:本文系统介绍了数组排序的多种算法,包括选择排序、冒泡排序、插入排序、桶排序、快速排序和归并排序,并分析了它们的实现原理、时间复杂度和适用场景。选择排序通过每次选择最小元素实现排序;冒泡排序通过相邻元素比较交换;插入排序模拟打牌时的插入过程;桶排序适合有限范围内的整数排序;快速排序采用分治策略;归并排序则通过分解和合并实现稳定排序。文章还探讨了逆序对问题及各种排序算法的比较,包括稳定性、时间复杂度和辅助空间等维度。最后指出,不同排序算法各有优劣,应根据具体需求选择合适的算法。原创 2024-09-07 22:11:41 · 915 阅读 · 0 评论 -
高精度运算(基础算法)
本文以幽默风趣的语言介绍了高精度运算的基本原理和实现方法。高精度运算用于处理超出常规数据类型范围的超大数计算。主要内容包括:1)数据接收与存储方法,使用字符串转换数组存储;2)加减乘除四种基本运算的算法实现,重点讲解进位、借位处理机制;3)提供了五个典型例题的完整参考代码,包括高精度加减乘除运算和回文数判断;4)详细说明了n进制运算的特殊处理方式。文章通过具体代码示例,展示了如何利用数组存储和基础算法实现高精度计算,为处理大数运算问题提供了系统解决方案。原创 2024-09-03 21:49:15 · 1271 阅读 · 0 评论
分享