自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【数学建模】插值、拟合与回归

本文主要介绍数学建模中常用的插值、拟合与回归算法。

2024-01-25 15:00:44 1427 1

原创 【数学建模】优化模型——规划模型

本文主要讲解数学建模中的优化模型——数学规划。

2024-01-21 12:01:14 3910

原创 【博弈论】从Nim游戏到SG函数

本文介绍博弈论中的Nim游戏以及博弈论中重要的解题方法:SG函数

2023-08-10 21:03:31 168

原创 【求组合数】各种组合数 卡特兰数

本文介绍组合数的各类求法以及组合数的重要应用——卡特兰数

2023-08-10 15:13:59 181

原创 【简单数论】求乘法逆元

本文介绍如何求解乘法逆元

2023-08-08 16:49:36 113

原创 【贪心】区间问题:选点、分组、覆盖以及最大不相交数量

本文介绍贪心问题中的几种区间问题

2023-07-30 15:43:43 599

原创 【数位统计dp】计数问题

本文讲解计数问题

2023-07-29 16:59:13 188

原创 【记忆化搜索】滑雪

本文讲解记忆化搜索问题:滑雪

2023-07-29 11:51:58 67

原创 【树型dp】没有上司的舞会

本文介绍树型dp,以及讲解例题:没有上司的舞会

2023-07-29 11:12:01 56

原创 【状态压缩dp】蒙德里安的梦想、最短Hamiltona路径

本文介绍状态压缩dp,并讲解两道例题:蒙德里安的梦想、最短Hamilton路径

2023-07-29 10:13:05 171 2

原创 【动态规划】线性dp、区间dp

本文介绍dp问题中的线性dp和区间dp

2023-07-27 11:32:17 258 1

原创 【动态规划】背包问题详解

本文介绍动态规划中的背包问题

2023-07-26 11:34:01 1166 1

原创 【简单数论】欧拉函数、快速幂、扩展欧几里得算法

本文介绍欧拉函数、快速幂以及扩展欧几里得算法

2023-07-24 12:30:00 194

原创 C++:常用stl容器及其操作

本文介绍C++常用stl容器及操作

2023-07-22 21:03:38 649

原创 【简单数论】质数和约数

本文主要介绍简单数论中质数和约数的相关题目

2023-07-22 16:19:31 244

原创 C++:【数据结构】并查集

那么首先想到的暴力做法就是,开一个数组,让在一个集合中的数都等于相同的值。但是这样做的话,假设有一万个点在集合1里,有两万个点在集合2里,要合并的话,首先要遍历一遍全部数组,把所有在集合1里的点挑出来,然后再让他们等于集合2的值,这样显然是十分愚蠢的。因为找到一个点的根节点是需要递归上去的,越摞越高的话,查询的时间复杂度会非常高。,将编号为 a 和 b 的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作。,可以执行合并集合,查询两个数是否在一个集合中,以及可能还有一些其他奇怪的操作。

2023-07-21 12:24:31 114 1

原创 C++:染色法判定二分图及匈牙利算法

本文介绍染色法判断二分图以及匈牙利算法

2023-07-21 10:49:19 330 1

原创 C++:【算法】最小生成树问题

在图论问题中有这样一类问题:就是问题(适用于无向图)。简单来说,就是。针对这类问题的不同情况,有三种解决方法:简要说明以下,n为点数,m为边数。很显然,,而。但是由于堆优化Prim太复杂且其时间复杂度和Kruskal一样,所以来解决。因此这里对于堆优化的Prim就不做讲解了。下面重点说说朴素Prim和Kruskal。

2023-07-20 22:26:08 501

原创 C++:用邻接矩阵和邻接表存图

邻接矩阵和邻接表是非常常用的存图的方式,所以有必要浅浅地说一下这两种方式是怎么实现的。此外,还有一些更加高级的方法,比如链式前向星,但是这里只针对基础且最常用的方法,感兴趣的同学可以自行查阅。

2023-07-19 22:45:16 253

原创 C++:【算法】最短路问题

在图论问题中,最短路算法是一个典型且很常用的算法。面对不同的情况,要选择不同的算法。本文。下面给出一个思维导图:算法并不难,问题的关键在于建图,这个需要做题积累经验。下面只给出算法的基本实现,还需各位同学多多做题。

2023-07-19 17:14:45 621

原创 C++:【搜索】深度优先搜索与广度优先搜索

简单来说,dfs就是从图的某一个点开始,沿着一条路走到黑,不撞南墙不回头。在走到尽头的时候,再返回搜索下一条路。举个简单的例子:这乍一看好像是一个树,但是其实大部分图都是错综复杂的,树只是一种特殊的图,因为举例子比较方便,所以就先用树状图举例子了。dfs从1号点开始,假设从最左边这条边开始搜索,那么要搜索到末端,也就是:然后就要回头了,那么回到哪里呢?回到离他最近的一个有岔路的点,并从那条岔路一直搜索到末端。也就是:以此类推,直到所有点都被搜索过,也就是出发点的所有出边都被搜索过了。

2023-07-17 22:29:18 2023 3

原创 C++:【数据结构】哈希表

哈希表(hash table)又叫散列表,是一种很实用的数据结构。首先来看一下百度给出的定义:散列表,是。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。通俗一点来说,就是我们有一堆值,他们的范围很大,但是又很分散,直接存储本身的话会非常占地方,所以我们就把它,这样不但节省了空间,而且还方便查找。

2023-05-30 17:33:39 2065 2

原创 C++:【数据结构】用数组实现的单链表和双向链表

链表是程序设计中一种十分重要的数据结构。正如它的名字一样,它是一个“链状”的数据结构。如下图所示:其中每个节点都可以保存数据,同时每个节点又有一个指针指向下一个节点,来形成链状结构。那么这时候就会有人要说了,这不就是数组吗。其实不然,它和数组各有优缺点。数组就是一串连续的存储单元,而链表不一定是连续的存储单元。数组的优点就是可以很快的访问到某个元素,因为只需要给数组名取下标,就可以访问到某个元素了;但是链表要访问一个元素,需要从头节点开始往后找,越接近链表尾的元素访问的越慢。但是链表可以。

2023-05-25 22:55:39 1080 3

原创 C++:【数据结构】模拟堆

全部down一遍就好,注意是。

2023-05-18 17:42:54 652 1

原创 C++:【数据结构】trie树

这篇文章来介绍一个比较重要的数据结构:字典树(TrieTree)。其中 trie 一词来自于英语单词 retrieval 【检索】。

2023-05-13 00:55:06 666 2

原创 C++:单调栈和单调队列及其应用

栈和队列是两个很重要的数据结构。其中单调栈和单调队列是栈和队列的“特别版”。下面就来介绍一下单调栈和单调队列以及它们可能的用处。

2023-05-11 18:09:53 645 6

原创 C++:KMP字符串详解

kmp算法(Knuth-Morris-Pratt算法)是一种算法,可以在O(m+n)的时间复杂度内实现两个字符串的匹配。下面谈谈个人对于kmp算法浅陋的理解。

2023-05-06 23:06:57 691 14

空空如也

空空如也

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

TA关注的人

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