自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++排序与搜索算法深度解析:从原理到实战优化

(如[4,5,6,7,0,1,2])

2025-05-09 22:09:53 378

原创 C++ 学习者从小学到初中完整版学习指南

案例:在教师指导下实现“斐波那契数列递归解法”到“动态规划优化”的跨越。小学阶段(具体运算期):通过可视化工具(如Scratch)理解逻辑。:建立“程序即指令序列”的直觉,完成从图形操作到符号输入的过渡。:掌握NOIP普及组/提高组难度算法,具备工程级代码能力。初中阶段(形式运算期):抽象算法与数学符号的深度融合。:独立实现100行以内程序,掌握排序、递归等基础算法。背包问题的五种变体(01背包、完全背包、多重背包等)。(Linux)查看目录,理解“程序即工具”。:模拟物体碰撞与重力,理解向量运算。

2025-03-29 11:10:08 1181

原创 hash算法

当处理自定义类型(如结构体或类)时,需要定义自己的哈希函数,以便在无序容器中使用。int x, y;return 0;

2025-03-29 10:17:21 813

原创 图的应用(1)

priority_queue是C++标准库中的一个容器适配器(container adapter),用于实现优先队列(priority queue)的数据结构。优先队列是一种特殊的队列,其中的元素按照一定的优先级进行排序,每次取出的元素都是优先级最高的。它的底层实现通常使用堆(heap)数据结构。在C++中,priority_queue模板类定义在<queue>头文件中,可以通过指定元素类型和比较函数来创建不同类型的优先队列。比较函数用于确定元素的优先级,可以是函数指针、函数对象或Lambda表达式。

2025-03-22 13:50:56 1055

原创 c++线段树

线段树(Segment Tree)是一种高效处理区间查询问题的二叉树数据结构,支持区间查询和单点更新操作,时间复杂度均为O(log n)。

2025-03-22 13:22:29 200

原创 排列与组合

排列:n个元素中取r个按顺序排成一列,称为从n中取r的排列,其排列的方案数以P(n,r)表示.模型:从n个中取r个排列的典型模型是把n个有标志的球取r个放到r个有区别的盒子里.举例:例如从(A,B,C)中取2个为一组排列,可有 (A,B), (A,C), (B,A) , (B,C), (C,A), (C,B) 六个组,故P(3,2)=6. 举例: P(5,3) = 5*4*3 = 5!/2! 全排列: n! =1*2

2025-03-11 13:19:05 261

原创 贪心算法学习

1、贪心算法顾名思义,贪心算法总是作出在当前看来最好的选择。也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择。当然,希望贪心算法得到的最终结果也是整体最优的。虽然贪心算法不能对所有问题都得到整体最优解,但对许多问题它能产生整体最优解。如单源最短路经问题,最小生成树问题等。在一些情况下,即使贪心算法不能得到整体最优解,其最终结果却是最优解的很好近似。2、贪心算法的基本要素对于一个具体的问题,怎么知道是否可用贪心算法解此问题,以及能否得到问题的最优解呢?

2025-03-10 13:41:13 549

原创 二分查找原理

请在一个有序递增数组中(不存在相同元素),采用二分查找,找出值x的位置,如果x在数组中不存在,请输出-1!输入格式第一行,一个整数n,代表数组元素个数(n <= 600000)第二行,n个数,代表数组的n个递增元素(1<=数组元素值<=2000000)第三行,一个整数x,代表要查找的数(0<=x<=2000000)输出格式按题意输出位置或者-1。输入:103输出:2当我们要从一个序列中查找一个元素的时候,最快想到的方法就是顺序查找法(即:从前到后依次查找)。

2025-03-10 12:57:15 610

原创 广度优先搜索

广度优先搜索(Breadth First Search,BFS),简单的说,它是从一个点开始,始终访问离他最近的点,直到所有点都被访问,则算法终止。属于一种盲目搜寻算法,它不会考虑结果的可能位置,而是彻底搜索整个数据结构,直到找到结果为止。一般用于树,矩阵和图的遍历,对于树来说就是从根节点开始,从上到下一层一层的遍历。对于矩阵来说就是从某一个点开始沿着它的上下左右四个方向遍历。广度优先遍历秘籍:先被访问的顶点,其邻接点先被访问。根据广度优先遍历秘籍,先来先服务,可以借助于队列实现。

2025-03-08 16:30:44 866

原创 STL整理

如有漏洞可以联系我一、标准模板库(Standard Template Library,STL)是HP公司开发的一个C++模板库,包含一些常用的数据结构和算法。具有以下的组件:1.容器:容纳包含一组元素的对象。2.迭代器:提供访问容器的方法3.函数对象4.算法二、STL之向量——vector1.vector是c++标准库提供的一个变长数组类型,它可以像数组一样进行数据的存储和访问。2.vector会根据需要自动扩展其自身的容量来容纳更多的数据。3.vector的内部存储结构和数组一样,使用的是一段连续的存储空

2025-03-08 15:25:34 1006

原创 深度优先搜索

(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。运用回溯法解题的关键要素有以下三点:(1) 针对给定的问题,定义问题的解空间;(2) 确定易于搜索的解空间结构;(3) 以深度优先方式搜索解空间,并且在搜索过程中用剪枝函数避免无效搜索。典型题分析它有以下几种编写方法:售货员的麻烦描述。

2025-03-08 14:02:27 650

原创 c++初学者攻略

本人是一个初中生,勿喷。

2025-03-08 13:12:16 752 1

空空如也

空空如也

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

TA关注的人

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