![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
BFS
甘甘甘甘甘甘甘
码不停题
展开
-
迷宫最短路径|BFS模板
迷宫/* * n=10 m=10 #S######.# ......#..# .#.##.##.# .#........ ##.##.#### ....#....# .#######.# ....#..... .####.###. ....#...G# */import java.util.LinkedList;import java.util.Queue;impo...原创 2019-04-09 23:48:27 · 1062 阅读 · 2 评论 -
打印最短路的路径|POJ3984
打印最短路的路径POJ-3984打印最短路径的方法保存每个节点的父亲节点,具体用二维矩阵来存储节点。在bfs的过程中更新数组。if ((0 <= nx && nx < 5) && (0 <= ny && ny < 5) && (dis[nx][ny] == -1) && (maze...原创 2019-04-21 15:48:59 · 574 阅读 · 0 评论 -
Fill(BFS + 优先队列)|UVA10603
文章目录Fill倒水问题FillUVA 10603要求倒水量最小,所以在Node中定义w表示当前状态的倒水量,然后在插入节点时用优先队列排序如何解决找不到d升水时的情况?可以用record[i]来表示至少有一个杯子为i升水时的最少倒水量,这样找不到d时,就从d向左找第一个有记录的点即可这是一道倒水问题的衍生题目,主要是多了优先队列#include <iostream>...原创 2019-04-26 15:57:02 · 128 阅读 · 0 评论 -
逃离迷宫(DFS/BFS)|HDU1728
逃离迷宫HDU1728这道题目跟以往的最短路不同,其核心是利用BFS由近及远的特点求出到达目标点的最少拐弯数。如何求出最少的拐弯数?最少拐弯数即意味着,从起点到目标点的路径要尽量直来直往,即在某点选定任意方向后始终沿该方向行走直到不可走。for(int i = 0;i < 4;i++){ int nx = x + dx[i], ny = y + dy[i]; while(ju...原创 2019-04-23 00:52:19 · 1322 阅读 · 1 评论 -
Rescue(BFS + 优先队列)|HDU1242
RescueRescue'x’的权值是2,其他的权值是1用优先队列对插入的节点排序,时间消耗小的排在队首每次都从时间消耗小的开始向四周发散(BFS)#include <iostream>#include<queue>using namespace std;struct Node { int x, y, step; Node(int a = 0, i...原创 2019-04-25 16:11:30 · 216 阅读 · 0 评论 -
DFS\BFS汇总
DFS\BFS汇总文章目录DFS\BFS汇总BFS迷宫最短路径打印最短的路径逃离迷宫Rescue(BFS+优先队列)Fill(BFS+优先队列)DFS路径之谜最大乘积BFS迷宫最短路径迷宫最短路径打印最短的路径打印最短的路径逃离迷宫逃离迷宫Rescue(BFS+优先队列)RescueFill(BFS+优先队列)FillDFS路径之谜小明冒充X星球的骑士,进入了一个奇怪...原创 2019-05-21 11:49:19 · 146 阅读 · 0 评论