![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python--蓝桥杯(算法)
简单算法示例
shutu__020917
这个作者很懒,什么都没留下…
展开
-
python--蓝桥杯--KMP算法
现在定义一个int型数组next,其中next[i]表示使子串s[0...i]的前缀s[0...k]等于后缀s[i-k...i]的最大k(注意前缀和后缀可以部分重叠,但不能是s[0...i]本身);优化后的next数组被称为nextval数组,它丢失了next数组的最长相等前后缀含义,却让适配时的处理达到最优,因此nextval数组的含义应该理解为当模式串pattern的i+1位发生失配时,i应该回退到的最佳位置。3、不断令j=next[j],直至j回退为-1,或是s[i]==s[j+1]。原创 2024-04-11 22:48:49 · 561 阅读 · 1 评论 -
python--蓝桥杯--最小生成树
在Dijkstra算法中d[v]数组是结点v到达源点s的最短距离,在prim算法中d[v]数组是结点v到达集合S的最短距离。最小生成树(Minimum Spanning Tree MST)是在一个给定的无向图G(V,E)中求一棵树T,使得这棵树拥有图G中的所有顶点,且所有边都是来自图G中的边,并且满足整棵树的边权和最小。2、按边权从小到大测试所有边,如果当前测试边所连接的顶点不在一个联通块,则把这条测试边加入当前最小生成树中,否则舍弃。1、最小生成树是树,因此其边数等于顶点数减1,且树内一定不会有环。原创 2024-04-11 19:38:29 · 407 阅读 · 2 评论 -
python--蓝桥杯--最短路径
Dijkstra算法可以很好地解决无负权图的最短路径问题,但如果出现了负权边,Dijkstra算法就会失效。为了更好地求解有负权边的最短路径问题,需要使用Bellman-Ford算法(简称BF算法),和Dijkstra算法一样,Bellman-Ford算法可以解决单源最短路径问题,但也能处理有负权边的情况。Bellman-Ford算法的思路简洁直接,易于读者掌握。2、Bellman-Ford算法和SPFA算法。原创 2024-04-10 22:47:32 · 123 阅读 · 1 评论 -
python--蓝桥杯--最短路径
Dijkstra算法的基本用法大家应该已经掌握,但是题目肯定不会考的那么裸,更多时候会出现这样一种情况,即从起点到终点的最短路径不止一条。当碰到这种两条以上的最短路径,题目就会给出第二标尺(第一标尺是距离),要求在所有最短路径中选择第二标尺最优的一条路径。Dijkstra算法解决的是单源最短路径问题,即给定G(V,E)和起点s(起点又称为源点),求从起点s到达其它顶点的最短距离。2、给每个点增加一个点权(例如到达该城市能收集到的物资),求多条最短路径时,点权和最大。3、直接问有多少条最短路径。原创 2024-04-10 22:14:17 · 288 阅读 · 1 评论 -
python--蓝桥杯--图算法
邻接表:图中的每个顶点都有可能含有若干条出边,如果把同一个顶点的所有出边放在一个列表中,那么N个顶点就会有N个列表(没有出边,则对应空列表)。如果不存在边权,G[i][j]=1表示顶点i、j之间有边,=0表示顶点i、j之间无边。图由顶点(Vertex)和边(Edge)组成,每条边的两端都必须是图的两个顶点。邻接矩阵:令二维数组G[N][N]的两维分别表示图的顶点标号。顶点的度:和该顶点相连的边的条数,入边--入度,出边--出度。顶点和边都可以有一定属性,而量化的属性称为权值,点权、边权。原创 2024-04-10 17:59:00 · 158 阅读 · 1 评论 -
python--蓝桥杯--二叉树
4、二叉树的遍历(前中后层)2、二叉树结点的搜索、修改。3、二叉树的插入(失败)原创 2024-04-09 21:56:00 · 202 阅读 · 0 评论 -
python--蓝桥杯--深搜DFS、广搜BFS
给定一个n*m大小的迷宫,其中*代表不可通过的墙壁,而 . 代表平地,S表示起点,T代表终点。移动过程中,如果当前位置是(x,y)(下标从0开始),且每次只能前往上下左右四个平地,求从起点S到终点T的最小步数。给出一个矩阵n*m,矩阵中的元素为0/1。称位置(x,y)与其上下左右四个位置是相邻的。如果矩阵中有若干个1是相邻的(不必是俩俩相邻),那么称这些1构成一个块。求给定的矩阵中快的个数。原创 2024-04-09 18:53:23 · 254 阅读 · 0 评论 -
python--蓝桥杯--组合数的计算
组合数的计算(3种方法)原创 2024-04-09 16:25:33 · 192 阅读 · 0 评论 -
python--蓝桥杯--(平方数、立方数)
【代码】python--蓝桥杯--(平方数、立方数)原创 2024-04-09 15:50:51 · 106 阅读 · 0 评论 -
pyhton--蓝桥杯--关于n!的一个问题
【代码】pyhton--蓝桥杯--关于n!的一个问题。原创 2024-04-08 22:15:05 · 81 阅读 · 0 评论 -
python--蓝桥杯(扩展欧几里得算法)
待---------------------------------------------------------------------------原创 2024-04-08 21:52:28 · 81 阅读 · 0 评论 -
python--蓝桥杯(素数、质数)
时间复杂度O(sqr(num))原创 2024-04-08 21:42:02 · 156 阅读 · 0 评论 -
python--蓝桥杯(print输出(数据格式format))
, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。+ 表示在正数前显示 +,负数前显示 -;(空格)表示在正数前加空格。b、d、o、x 分别是二进制、十进制、八进制、十六进制。数字补零 (填充左边, 宽度为2)数字补x (填充右边, 宽度为4)数字补x (填充右边, 宽度为4)右对齐 (默认, 宽度为10)中间对齐 (宽度为10)带符号保留小数点后两位。带符号保留小数点后两位。左对齐 (宽度为10)以逗号分隔的数字格式。原创 2024-04-08 20:34:52 · 278 阅读 · 0 评论 -
python——蓝桥杯(最大公约数、最小公倍数)
【代码】python——蓝桥杯(最大公约数、最小公倍数)原创 2024-04-08 20:26:26 · 127 阅读 · 0 评论