自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Bellman-ford

bellman-ford可以用来计算加权图中的从源点到其他所有顶点的最短路径,并检测图中是否有负权回路。self.edges.append ((u,v,w))#添一条边(u,v)权重为w。print(f"顶点{i}:{dist[i]}")#初始化距离数组,所有距离设为无穷大,源点距离设为0。print("图中包含负权回路")self.V = vertices #顶点数。print("顶点距离源点的最短距离:")self.edges =[] #边列数。

2025-04-30 09:18:39 310

原创 dijkstra算法找非负加权图最短路径

假如我有一个如下图所示的路径图,我要从A点到D点,所有的边权都为非负数,我如何找到最短路径。dijkstra算法可以找到非负加权图的最短路径。start : 起始节点。graph : 链接图。end : 到达的节点。# 示例图(邻接表表示)

2025-04-23 10:51:33 804

原创 有向无环图之拓扑排序kahn算法(基于入度)

拓扑排序(TopSort)是一种针对有向无环图(DAG)的线性排序算法。return [] # 存在环,无法拓扑排序。print("有环,无法拓扑排序")我们将有一个→ 指向,称为有一个入度。

2025-04-18 14:31:16 1359

原创 洗牌算法产生随机排序

这里我们简化问题,假设有一个数组letterPool:{abcdefghijklmnopqrstuvwxyz} 我们如何得到letterPool的随机排列呢?// 生成一个0到i之间的随机索引。我们在打扑克牌时,每次开始时,都需要将牌打乱,产生一个随机的牌序。那么在计算机中程序中,这些该如何实现呢?// Fisher-Yates 洗牌算法。// 初始化随机数生成器。

2025-04-15 15:10:10 316

原创 迷宫寻路之广度优先算法(bfs)

简短介绍了深度优先算法(df)用于迷宫寻路,但深度优先算法具有随机性,而且找到的路不一定是最短的路径。上文括号里的参数,例如(3,1,4),3行,1为列,4为到达的最短步数。这里我们从(0,0)出发到到(2,2)位置,最少需要4步。if (q->front > q->rear) { // 队列为空时重置。//maze 表示迷宫,0表示可以通行,1表示不可以通行。//这里是path的索引。通过标注,我们可以清楚的知道最短路径。下面是通过c写的相关实现。// 队列结构用于BFS。// 检查队列是否为空。

2025-04-14 12:00:14 1870

原创 迷宫寻路之深度优先搜索(dfs)

* 这里的意思是标注迷宫每个点的位置,用x,y 表示,有且拥有迷宫中点数目的位置,每个点只会存储一次位置。//用于记录当前位置有没有访问过,初始为没有访问。//用于详细的记载,迷宫中的运动轨迹,方便输出。//这里是detailPath的索引。//maze 表示迷宫,0表示可以通行,1表示不可以通行。//这里是path的索引。

2025-04-11 12:21:47 571

空空如也

空空如也

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

TA关注的人

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